Finishing out write of camera_definition and target_definition to flatbuffer
Includes a lot more target_definition and ability to run commandline
Adds test of camera and target definition
Use deepcopy to make sure each calibration is independent of the other
Adding dependencies on python files
Changed argparser style of handling args
Change-Id: I132e1ffd0ef9de710ae03916de21442ed1cb2cc8
diff --git a/y2020/vision/tools/python_code/BUILD b/y2020/vision/tools/python_code/BUILD
index 670b664..3d7bedb 100644
--- a/y2020/vision/tools/python_code/BUILD
+++ b/y2020/vision/tools/python_code/BUILD
@@ -2,27 +2,29 @@
py_binary(
name = "load_sift_training",
- data = [
- ":test_images/train_power_port_red.png",
- ":test_images/train_power_port_red_webcam.png",
- ":test_images/train_power_port_blue.png",
- ":test_images/train_loading_bay_red.png",
- ":test_images/train_loading_bay_blue.png",
- ],
- srcs = ["load_sift_training.py",
+ srcs = [
"camera_definition.py",
"define_training_data.py",
+ "load_sift_training.py",
"target_definition.py",
"train_and_match.py",
],
- args = ["sift_training_data.h",
+ args = [
+ "sift_training_data.h",
+ ],
+ data = [
+ ":test_images/train_loading_bay_blue.png",
+ ":test_images/train_loading_bay_red.png",
+ ":test_images/train_power_port_blue.png",
+ ":test_images/train_power_port_red.png",
+ ":test_images/train_power_port_red_webcam.png",
],
default_python_version = "PY3",
srcs_version = "PY2AND3",
deps = [
"//y2020/vision/sift:sift_fbs_python",
- "@opencv_contrib_nonfree_amd64//:python_opencv",
"@bazel_tools//tools/python/runfiles",
+ "@opencv_contrib_nonfree_amd64//:python_opencv",
],
)
@@ -41,9 +43,76 @@
)
cc_library(
- name = "sift_training",
+ name = "sift_training_data",
hdrs = [
"sift_training_data.h",
],
visibility = ["//visibility:public"],
)
+
+py_binary(
+ name = "load_sift_training_test",
+ srcs = [
+ "camera_definition.py",
+ "define_training_data.py",
+ "load_sift_training.py",
+ "target_definition.py",
+ "train_and_match.py",
+ ],
+ args = [
+ "sift_training_data_test.h",
+ "test",
+ ],
+ data = [
+ ":test_images/train_power_port_red.png",
+ ],
+ default_python_version = "PY3",
+ main = "load_sift_training.py",
+ srcs_version = "PY2AND3",
+ deps = [
+ "//y2020/vision/sift:sift_fbs_python",
+ "@bazel_tools//tools/python/runfiles",
+ "@opencv_contrib_nonfree_amd64//:python_opencv",
+ ],
+)
+
+genrule(
+ name = "run_load_sift_training_test",
+ outs = [
+ "sift_training_data_test.h",
+ ],
+ cmd = " ".join([
+ "$(location :load_sift_training_test)",
+ "$(location sift_training_data_test.h) test",
+ ]),
+ tools = [
+ ":load_sift_training_test",
+ ],
+)
+
+cc_library(
+ name = "sift_training_data_test",
+ hdrs = [
+ "sift_training_data_test.h",
+ ],
+ visibility = ["//visibility:public"],
+)
+
+cc_test(
+ name = "camera_param_test",
+ srcs = [
+ "camera_param_test.cc",
+ ],
+ restricted_to = [
+ "//tools:k8",
+ "//tools:armhf-debian",
+ ],
+ deps = [
+ ":sift_training_data_test",
+ "//aos/testing:googletest",
+ "//third_party:opencv",
+ "//y2020/vision:vision_fbs",
+ "//y2020/vision/sift:sift_fbs",
+ "//y2020/vision/sift:sift_training_fbs",
+ ],
+)