blob: a867578b167ece4bffa1d25947c274cf3c815b5c [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
James Kuszmaulcb94db72021-08-07 15:30:19 -07004py_library(
5 name = "train_and_match",
6 srcs = ["train_and_match.py"],
7 data = [
8 "@python_repo//:scipy",
9 ],
10 deps = [
11 "//external:python-glog",
12 "@opencv_contrib_nonfree_amd64//:python_opencv",
13 ],
14)
15
16py_library(
17 name = "define_training_data",
18 srcs = [
19 "define_training_data.py",
20 ],
21 data = [
22 "@python_repo//:scipy",
23 ],
24 deps = [
25 ":train_and_match",
26 "//external:python-glog",
27 "@opencv_contrib_nonfree_amd64//:python_opencv",
28 ],
29)
30
31py_library(
32 name = "camera_definition",
33 srcs = [
34 "camera_definition.py",
35 ],
36 deps = [
37 ":define_training_data",
38 "//external:python-glog",
39 ],
40)
41
42py_library(
43 name = "target_definition",
44 srcs = [
45 "target_definition.py",
46 ],
47 deps = [
48 ":camera_definition",
49 ":define_training_data",
50 ":train_and_match",
51 "//external:python-glog",
52 "@opencv_contrib_nonfree_amd64//:python_opencv",
53 ],
54)
55
56py_binary(
57 name = "target_definition_main",
58 srcs = ["target_definition.py"],
59 data = glob(["calib_files/*.json"]) + glob([
60 "test_images/*.png",
61 ]),
62 main = "target_definition.py",
63 python_version = "PY3",
64 target_compatible_with = ["@platforms//os:linux"],
65 deps = [
66 ":target_definition",
67 "@bazel_tools//tools/python/runfiles",
68 ],
69)
70
Jim Ostrowskife70d3b2020-02-15 22:15:07 -080071py_binary(
72 name = "load_sift_training",
Jim Ostrowski38bb70b2020-02-21 20:46:10 -080073 srcs = [
Jim Ostrowski38bb70b2020-02-21 20:46:10 -080074 "load_sift_training.py",
Jim Ostrowskife70d3b2020-02-15 22:15:07 -080075 ],
Jim Ostrowski38bb70b2020-02-21 20:46:10 -080076 args = [
77 "sift_training_data.h",
78 ],
Jim Ostrowskiaf5a5062020-03-07 23:49:39 -080079 data = glob(["calib_files/*.json"]) + glob([
Jim Ostrowski59503182020-03-05 22:52:54 -080080 "test_images/*.png",
81 ]),
Austin Schuhda9d0602019-09-15 17:29:38 -070082 python_version = "PY3",
Philipp Schraderdada1072020-11-24 11:34:46 -080083 target_compatible_with = ["@platforms//os:linux"],
Jim Ostrowskife70d3b2020-02-15 22:15:07 -080084 deps = [
James Kuszmaulcb94db72021-08-07 15:30:19 -070085 ":camera_definition",
86 ":target_definition",
87 "//external:python-glog",
88 "//y2020/vision/sift:sift_fbs_python",
89 "@bazel_tools//tools/python/runfiles",
90 "@opencv_contrib_nonfree_amd64//:python_opencv",
91 ],
92)
93
94py_binary(
95 name = "image_match_test",
96 srcs = [
97 "image_match_test.py",
98 ],
99 data = glob(["calib_files/*.json"]) + glob([
100 "test_images/*.png",
101 ]),
102 python_version = "PY3",
103 target_compatible_with = ["@platforms//os:linux"],
104 deps = [
105 ":camera_definition",
106 ":target_definition",
Jim Ostrowskiad5d8a72020-02-28 00:15:26 -0800107 "//external:python-glog",
Jim Ostrowskife70d3b2020-02-15 22:15:07 -0800108 "//y2020/vision/sift:sift_fbs_python",
Jim Ostrowskife70d3b2020-02-15 22:15:07 -0800109 "@bazel_tools//tools/python/runfiles",
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800110 "@opencv_contrib_nonfree_amd64//:python_opencv",
Jim Ostrowskife70d3b2020-02-15 22:15:07 -0800111 ],
112)
113
114genrule(
115 name = "run_load_sift_training",
116 outs = [
117 "sift_training_data.h",
118 ],
119 cmd = " ".join([
120 "$(location :load_sift_training)",
121 "$(location sift_training_data.h)",
122 ]),
Philipp Schraderdada1072020-11-24 11:34:46 -0800123 target_compatible_with = ["@platforms//os:linux"],
Jim Ostrowskife70d3b2020-02-15 22:15:07 -0800124 tools = [
125 ":load_sift_training",
126 ],
127)
128
129cc_library(
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800130 name = "sift_training_data",
Jim Ostrowskife70d3b2020-02-15 22:15:07 -0800131 hdrs = [
132 "sift_training_data.h",
133 ],
Philipp Schraderdada1072020-11-24 11:34:46 -0800134 target_compatible_with = ["@platforms//os:linux"],
Jim Ostrowskife70d3b2020-02-15 22:15:07 -0800135 visibility = ["//visibility:public"],
Brian Silverman36c7f342021-06-11 15:21:41 -0700136 deps = [
137 "@com_google_absl//absl/types:span",
138 ],
Jim Ostrowskife70d3b2020-02-15 22:15:07 -0800139)
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800140
141py_binary(
142 name = "load_sift_training_test",
143 srcs = [
Jim Ostrowskiad5d8a72020-02-28 00:15:26 -0800144 "camera_definition_test.py",
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800145 "define_training_data.py",
146 "load_sift_training.py",
Jim Ostrowskiad5d8a72020-02-28 00:15:26 -0800147 "target_definition_test.py",
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800148 "train_and_match.py",
149 ],
150 args = [
151 "sift_training_data_test.h",
152 "test",
153 ],
Jim Ostrowskiaf5a5062020-03-07 23:49:39 -0800154 data = glob(["calib_files/*.json"]) + glob([
Jim Ostrowski59503182020-03-05 22:52:54 -0800155 "test_images/*.png",
156 ]),
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800157 main = "load_sift_training.py",
Philipp Schraderdada1072020-11-24 11:34:46 -0800158 python_version = "PY3",
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800159 srcs_version = "PY2AND3",
Philipp Schraderdada1072020-11-24 11:34:46 -0800160 target_compatible_with = ["@platforms//os:linux"],
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800161 deps = [
James Kuszmaulb6985ce2020-03-08 22:18:49 -0700162 ":load_sift_training",
Jim Ostrowskiad5d8a72020-02-28 00:15:26 -0800163 "//external:python-glog",
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800164 "//y2020/vision/sift:sift_fbs_python",
165 "@bazel_tools//tools/python/runfiles",
166 "@opencv_contrib_nonfree_amd64//:python_opencv",
167 ],
168)
169
170genrule(
171 name = "run_load_sift_training_test",
172 outs = [
173 "sift_training_data_test.h",
174 ],
175 cmd = " ".join([
176 "$(location :load_sift_training_test)",
177 "$(location sift_training_data_test.h) test",
178 ]),
Philipp Schraderdada1072020-11-24 11:34:46 -0800179 target_compatible_with = ["@platforms//os:linux"],
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800180 tools = [
181 ":load_sift_training_test",
182 ],
183)
184
185cc_library(
186 name = "sift_training_data_test",
187 hdrs = [
188 "sift_training_data_test.h",
189 ],
Philipp Schraderdada1072020-11-24 11:34:46 -0800190 target_compatible_with = ["@platforms//os:linux"],
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800191 visibility = ["//visibility:public"],
Brian Silverman36c7f342021-06-11 15:21:41 -0700192 deps = [
193 "@com_google_absl//absl/types:span",
194 ],
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800195)
196
197cc_test(
198 name = "camera_param_test",
199 srcs = [
200 "camera_param_test.cc",
201 ],
Philipp Schraderdada1072020-11-24 11:34:46 -0800202 target_compatible_with = ["@platforms//os:linux"],
Jim Ostrowski38bb70b2020-02-21 20:46:10 -0800203 deps = [
204 ":sift_training_data_test",
205 "//aos/testing:googletest",
206 "//third_party:opencv",
207 "//y2020/vision:vision_fbs",
208 "//y2020/vision/sift:sift_fbs",
209 "//y2020/vision/sift:sift_training_fbs",
210 ],
211)