blob: 0f75aba804774ff3b20d2b6ce84cd316c40b950f [file] [log] [blame]
Filip Kujawa3004f202023-02-12 16:41:40 -08001load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library")
Maxwell Hendersonbf1bcec2023-03-05 18:00:20 -08002load("@com_github_google_flatbuffers//:typescript.bzl", "flatbuffer_ts_library")
Filip Kujawa3004f202023-02-12 16:41:40 -08003
Austin Schuhdb2ed9d2022-12-26 14:02:26 -08004cc_binary(
5 name = "camera_reader",
6 srcs = [
7 "camera_reader.cc",
Ravago Jonese8700072023-01-14 19:41:56 -08008 "rkisp1-config.h",
Austin Schuhdb2ed9d2022-12-26 14:02:26 -08009 ],
Ravago Jonese8700072023-01-14 19:41:56 -080010 target_compatible_with = [
11 "@platforms//os:linux",
12 "//tools/platforms/hardware:raspberry_pi",
13 ],
Austin Schuhdb2ed9d2022-12-26 14:02:26 -080014 visibility = ["//y2023:__subpackages__"],
15 deps = [
16 "//aos:init",
17 "//aos/events:shm_event_loop",
18 "//frc971/vision:media_device",
19 "//frc971/vision:v4l2_reader",
20 ],
21)
22
23cc_binary(
24 name = "viewer",
25 srcs = [
26 "viewer.cc",
27 ],
28 target_compatible_with = ["@platforms//os:linux"],
29 visibility = ["//y2023:__subpackages__"],
30 deps = [
31 "//aos:init",
Ravago Jones17e13a22023-01-28 17:12:11 -080032 "//aos:json_to_flatbuffer",
Austin Schuhdb2ed9d2022-12-26 14:02:26 -080033 "//aos/events:shm_event_loop",
milind-uc3cf9752023-02-20 23:07:30 -080034 "//frc971/constants:constants_sender_lib",
Austin Schuhdb2ed9d2022-12-26 14:02:26 -080035 "//frc971/vision:vision_fbs",
36 "//third_party:opencv",
milind-uc3cf9752023-02-20 23:07:30 -080037 "//y2023/vision:vision_util",
Ravago Jones17e13a22023-01-28 17:12:11 -080038 "@com_google_absl//absl/strings",
Austin Schuhdb2ed9d2022-12-26 14:02:26 -080039 ],
40)
milind-u16e3a082023-01-21 13:53:43 -080041
42cc_binary(
milind-ud4051fe2023-02-25 18:00:05 -080043 name = "localization_verifier",
44 srcs = [
45 "localization_verifier.cc",
46 ],
47 target_compatible_with = ["@platforms//os:linux"],
48 visibility = ["//y2023:__subpackages__"],
49 deps = [
50 "//aos:init",
51 "//aos/events:shm_event_loop",
52 "//frc971/constants:constants_sender_lib",
53 "//frc971/control_loops/drivetrain/localization:localizer_output_fbs",
54 "//frc971/vision:vision_fbs",
55 "//y2023/localizer",
milind-u607f3232023-02-26 15:22:40 -080056 "//y2023/localizer:utils",
milind-ud4051fe2023-02-25 18:00:05 -080057 "//y2023/vision:vision_util",
58 "@com_google_absl//absl/strings",
59 ],
60)
61
62cc_binary(
milind-u16e3a082023-01-21 13:53:43 -080063 name = "target_mapping",
64 srcs = [
65 "target_mapping.cc",
66 ],
67 data = [
68 "//y2023:aos_config",
milind-uc5a494f2023-02-24 15:39:22 -080069 "//y2023/constants:constants.json",
70 "//y2023/vision:maps",
milind-u16e3a082023-01-21 13:53:43 -080071 ],
72 target_compatible_with = ["@platforms//os:linux"],
73 visibility = ["//y2023:__subpackages__"],
74 deps = [
milind-u09fb1252023-01-28 19:21:41 -080075 ":aprilrobotics_lib",
milind-u16e3a082023-01-21 13:53:43 -080076 "//aos:init",
77 "//aos/events:simulated_event_loop",
78 "//aos/events/logging:log_reader",
Jim Ostrowski68965cd2023-03-01 20:32:51 -080079 "//aos/util:mcap_logger",
James Kuszmauld67f6d22023-02-05 17:37:25 -080080 "//frc971/constants:constants_sender_lib",
milind-u16e3a082023-01-21 13:53:43 -080081 "//frc971/control_loops:pose",
82 "//frc971/vision:calibration_fbs",
83 "//frc971/vision:charuco_lib",
84 "//frc971/vision:target_mapper",
85 "//third_party:opencv",
James Kuszmauld67f6d22023-02-05 17:37:25 -080086 "//y2023/constants:constants_fbs",
milind-uc5a494f2023-02-24 15:39:22 -080087 "//y2023/constants:simulated_constants_sender",
James Kuszmauld67f6d22023-02-05 17:37:25 -080088 ],
89)
90
91cc_library(
92 name = "vision_util",
93 srcs = ["vision_util.cc"],
94 hdrs = ["vision_util.h"],
95 deps = [
milind-uf2a4e322023-02-01 19:33:10 -080096 "//third_party:opencv",
James Kuszmauld67f6d22023-02-05 17:37:25 -080097 "//y2023/constants:constants_fbs",
98 "@com_github_google_glog//:glog",
milind-u16e3a082023-01-21 13:53:43 -080099 ],
100)
Maxwell Hendersonfebee252023-01-28 16:53:52 -0800101
Ravago Jonesb84f2062023-01-29 13:46:59 -0800102cc_library(
103 name = "aprilrobotics_lib",
Maxwell Hendersonfebee252023-01-28 16:53:52 -0800104 srcs = [
105 "aprilrobotics.cc",
106 "aprilrobotics.h",
107 ],
108 target_compatible_with = ["@platforms//os:linux"],
109 visibility = ["//y2023:__subpackages__"],
110 deps = [
James Kuszmauld67f6d22023-02-05 17:37:25 -0800111 ":vision_util",
Maxwell Hendersonfebee252023-01-28 16:53:52 -0800112 "//aos:init",
113 "//aos/events:shm_event_loop",
James Kuszmauld67f6d22023-02-05 17:37:25 -0800114 "//frc971/constants:constants_sender_lib",
Maxwell Hendersonfebee252023-01-28 16:53:52 -0800115 "//frc971/vision:calibration_fbs",
116 "//frc971/vision:charuco_lib",
117 "//frc971/vision:target_map_fbs",
118 "//frc971/vision:target_mapper",
119 "//frc971/vision:vision_fbs",
Jim Ostrowski49be8232023-03-23 01:00:14 -0700120 "//frc971/vision:visualize_robot",
Maxwell Hendersonfebee252023-01-28 16:53:52 -0800121 "//third_party:opencv",
122 "//third_party/apriltag",
James Kuszmauld67f6d22023-02-05 17:37:25 -0800123 "//y2023/constants:constants_fbs",
Maxwell Hendersonfebee252023-01-28 16:53:52 -0800124 ],
125)
Ravago Jonesb84f2062023-01-29 13:46:59 -0800126
127cc_binary(
128 name = "aprilrobotics",
129 srcs = [
130 "aprilrobotics_main.cc",
131 ],
132 target_compatible_with = ["@platforms//os:linux"],
133 visibility = ["//y2023:__subpackages__"],
134 deps = [
135 ":aprilrobotics_lib",
136 "//aos:init",
137 "//aos/events:shm_event_loop",
138 ],
139)
James Kuszmaul77d536c2023-02-11 17:30:59 -0800140
Yash Chainani10b7b022023-02-22 14:34:04 -0800141cc_test(
142 name = "april_detection_test",
143 srcs = [
144 "april_detection_test.cc",
145 ],
146 data = [
147 "//y2023:aos_config",
148 "//y2023/constants:constants.json",
149 "@apriltag_test_bfbs_images",
150 ],
151 deps = [
152 ":aprilrobotics_lib",
153 "//aos:flatbuffer_merge",
154 "//aos:json_to_flatbuffer",
155 "//aos/events:simulated_event_loop",
156 "//aos/testing:googletest",
157 "//aos/testing:path",
158 "//aos/testing:test_logging",
159 "//frc971/constants:constants_sender_lib",
160 "//frc971/vision:target_mapper",
161 "//frc971/vision:vision_fbs",
162 "//y2023/constants:constants_fbs",
163 "//y2023/constants:constants_list_fbs",
164 ],
165)
166
milind-u8e98cb92023-02-05 16:07:10 -0800167filegroup(
168 name = "image_streamer_start",
169 srcs = ["image_streamer_start.sh"],
170 visibility = ["//visibility:public"],
171)
172
James Kuszmaul77d536c2023-02-11 17:30:59 -0800173cc_binary(
174 name = "foxglove_image_converter",
175 srcs = ["foxglove_image_converter.cc"],
176 visibility = ["//y2023:__subpackages__"],
177 deps = [
178 "//aos:init",
179 "//aos/events:shm_event_loop",
180 "//frc971/vision:foxglove_image_converter_lib",
181 ],
182)
James Kuszmauld6199be2023-02-11 19:56:28 -0800183
184cc_binary(
185 name = "calibrate_extrinsics",
186 srcs = [
187 "calibrate_extrinsics.cc",
188 ],
189 target_compatible_with = ["@platforms//os:linux"],
190 deps = [
191 "//aos:init",
192 "//aos/events/logging:log_reader",
193 "//frc971/constants:constants_sender_lib",
194 "//frc971/control_loops:profiled_subsystem_fbs",
195 "//frc971/vision:extrinsics_calibration",
196 "//third_party:opencv",
197 "//y2023/constants:constants_fbs",
198 "//y2023/vision:vision_util",
199 ],
200)
Filip Kujawa3004f202023-02-12 16:41:40 -0800201
202cc_binary(
203 name = "game_pieces_detector",
204 srcs = [
205 "game_pieces_main.cc",
206 ],
207 target_compatible_with = ["@platforms//os:linux"],
208 visibility = ["//y2023:__subpackages__"],
209 deps = [
210 ":game_pieces_lib",
211 "//aos:init",
212 "//aos/events:shm_event_loop",
213 ],
214)
215
216cc_library(
217 name = "game_pieces_lib",
218 srcs = [
219 "game_pieces.cc",
220 ],
221 hdrs = [
222 "game_pieces.h",
223 ],
224 data = [
225 "//y2023:aos_config",
226 ],
227 target_compatible_with = ["@platforms//os:linux"],
228 visibility = ["//y2023:__subpackages__"],
229 deps = [
230 ":game_pieces_fbs",
231 "//aos/events:event_loop",
232 "//aos/events:shm_event_loop",
233 "//frc971/vision:vision_fbs",
234 ],
235)
236
237flatbuffer_cc_library(
238 name = "game_pieces_fbs",
239 srcs = ["game_pieces.fbs"],
240 gen_reflections = 1,
241 target_compatible_with = ["@platforms//os:linux"],
242 visibility = ["//visibility:public"],
243)
Maxwell Hendersonbf1bcec2023-03-05 18:00:20 -0800244
245flatbuffer_ts_library(
246 name = "game_pieces_ts_fbs",
247 srcs = ["game_pieces.fbs"],
248 target_compatible_with = ["@platforms//os:linux"],
249 visibility = ["//visibility:public"],
250)
milind-ua96c5182023-03-10 23:31:11 -0800251
252cc_binary(
253 name = "image_logger",
254 srcs = [
255 "image_logger.cc",
256 ],
257 target_compatible_with = ["@platforms//os:linux"],
258 visibility = ["//visibility:public"],
259 deps = [
260 "//aos:configuration",
261 "//aos:init",
262 "//aos/events:shm_event_loop",
263 "//aos/events/logging:log_writer",
264 "//aos/logging:log_namer",
265 "//frc971/input:joystick_state_fbs",
266 "@com_github_gflags_gflags//:gflags",
267 "@com_github_google_glog//:glog",
268 ],
269)