blob: 6223d76eaa249558a3c92ef306e5fac9351758f6 [file] [log] [blame]
Jim Ostrowskife70d3b2020-02-15 22:15:07 -08001load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library", "flatbuffer_py_library")
Philipp Schraderdada1072020-11-24 11:34:46 -08002load("//tools:platforms.bzl", "platforms")
Jim Ostrowskife70d3b2020-02-15 22:15:07 -08003
4py_binary(
5 name = "load_sift_training",
Jim Ostrowski38bb70b2020-02-21 20:46:10 -08006 srcs = [
Jim Ostrowskife70d3b2020-02-15 22:15:07 -08007 "camera_definition.py",
8 "define_training_data.py",
Jim Ostrowski38bb70b2020-02-21 20:46:10 -08009 "load_sift_training.py",
Jim Ostrowskife70d3b2020-02-15 22:15:07 -080010 "target_definition.py",
11 "train_and_match.py",
12 ],
Jim Ostrowski38bb70b2020-02-21 20:46:10 -080013 args = [
14 "sift_training_data.h",
15 ],
Jim Ostrowskiaf5a5062020-03-07 23:49:39 -080016 data = glob(["calib_files/*.json"]) + glob([
Jim Ostrowski59503182020-03-05 22:52:54 -080017 "test_images/*.png",
18 ]),
Austin Schuhda9d0602019-09-15 17:29:38 -070019 python_version = "PY3",
Jim Ostrowskife70d3b2020-02-15 22:15:07 -080020 srcs_version = "PY2AND3",
Philipp Schraderdada1072020-11-24 11:34:46 -080021 target_compatible_with = ["@platforms//os:linux"],
Jim Ostrowskife70d3b2020-02-15 22:15:07 -080022 deps = [
Jim Ostrowskiad5d8a72020-02-28 00:15:26 -080023 "//external:python-glog",
Jim Ostrowskife70d3b2020-02-15 22:15:07 -080024 "//y2020/vision/sift:sift_fbs_python",
Jim Ostrowskife70d3b2020-02-15 22:15:07 -080025 "@bazel_tools//tools/python/runfiles",
Jim Ostrowski38bb70b2020-02-21 20:46:10 -080026 "@opencv_contrib_nonfree_amd64//:python_opencv",
Jim Ostrowskife70d3b2020-02-15 22:15:07 -080027 ],
28)
29
30genrule(
31 name = "run_load_sift_training",
32 outs = [
33 "sift_training_data.h",
34 ],
35 cmd = " ".join([
36 "$(location :load_sift_training)",
37 "$(location sift_training_data.h)",
38 ]),
Philipp Schraderdada1072020-11-24 11:34:46 -080039 target_compatible_with = ["@platforms//os:linux"],
Jim Ostrowskife70d3b2020-02-15 22:15:07 -080040 tools = [
41 ":load_sift_training",
42 ],
43)
44
45cc_library(
Jim Ostrowski38bb70b2020-02-21 20:46:10 -080046 name = "sift_training_data",
Jim Ostrowskife70d3b2020-02-15 22:15:07 -080047 hdrs = [
48 "sift_training_data.h",
49 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080050 target_compatible_with = ["@platforms//os:linux"],
Jim Ostrowskife70d3b2020-02-15 22:15:07 -080051 visibility = ["//visibility:public"],
Brian Silverman36c7f342021-06-11 15:21:41 -070052 deps = [
53 "@com_google_absl//absl/types:span",
54 ],
Jim Ostrowskife70d3b2020-02-15 22:15:07 -080055)
Jim Ostrowski38bb70b2020-02-21 20:46:10 -080056
57py_binary(
58 name = "load_sift_training_test",
59 srcs = [
Jim Ostrowskiad5d8a72020-02-28 00:15:26 -080060 "camera_definition_test.py",
Jim Ostrowski38bb70b2020-02-21 20:46:10 -080061 "define_training_data.py",
62 "load_sift_training.py",
Jim Ostrowskiad5d8a72020-02-28 00:15:26 -080063 "target_definition_test.py",
Jim Ostrowski38bb70b2020-02-21 20:46:10 -080064 "train_and_match.py",
65 ],
66 args = [
67 "sift_training_data_test.h",
68 "test",
69 ],
Jim Ostrowskiaf5a5062020-03-07 23:49:39 -080070 data = glob(["calib_files/*.json"]) + glob([
Jim Ostrowski59503182020-03-05 22:52:54 -080071 "test_images/*.png",
72 ]),
Jim Ostrowski38bb70b2020-02-21 20:46:10 -080073 main = "load_sift_training.py",
Philipp Schraderdada1072020-11-24 11:34:46 -080074 python_version = "PY3",
Jim Ostrowski38bb70b2020-02-21 20:46:10 -080075 srcs_version = "PY2AND3",
Philipp Schraderdada1072020-11-24 11:34:46 -080076 target_compatible_with = ["@platforms//os:linux"],
Jim Ostrowski38bb70b2020-02-21 20:46:10 -080077 deps = [
James Kuszmaulb6985ce2020-03-08 22:18:49 -070078 ":load_sift_training",
Jim Ostrowskiad5d8a72020-02-28 00:15:26 -080079 "//external:python-glog",
Jim Ostrowski38bb70b2020-02-21 20:46:10 -080080 "//y2020/vision/sift:sift_fbs_python",
81 "@bazel_tools//tools/python/runfiles",
82 "@opencv_contrib_nonfree_amd64//:python_opencv",
83 ],
84)
85
86genrule(
87 name = "run_load_sift_training_test",
88 outs = [
89 "sift_training_data_test.h",
90 ],
91 cmd = " ".join([
92 "$(location :load_sift_training_test)",
93 "$(location sift_training_data_test.h) test",
94 ]),
Philipp Schraderdada1072020-11-24 11:34:46 -080095 target_compatible_with = ["@platforms//os:linux"],
Jim Ostrowski38bb70b2020-02-21 20:46:10 -080096 tools = [
97 ":load_sift_training_test",
98 ],
99)
100
101cc_library(
102 name = "sift_training_data_test",
103 hdrs = [
104 "sift_training_data_test.h",
105 ],
Philipp Schraderdada1072020-11-24 11:34:46 -0800106 target_compatible_with = ["@platforms//os:linux"],
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800107 visibility = ["//visibility:public"],
Brian Silverman36c7f342021-06-11 15:21:41 -0700108 deps = [
109 "@com_google_absl//absl/types:span",
110 ],
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800111)
112
113cc_test(
114 name = "camera_param_test",
115 srcs = [
116 "camera_param_test.cc",
117 ],
Philipp Schraderdada1072020-11-24 11:34:46 -0800118 target_compatible_with = ["@platforms//os:linux"],
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800119 deps = [
120 ":sift_training_data_test",
121 "//aos/testing:googletest",
122 "//third_party:opencv",
123 "//y2020/vision:vision_fbs",
124 "//y2020/vision/sift:sift_fbs",
125 "//y2020/vision/sift:sift_training_fbs",
126 ],
127)