blob: 442d95c5367302d98381fab44c502397f8e50703 [file] [log] [blame]
Filip Kujawa3004f202023-02-12 16:41:40 -08001#ifndef Y2023_VISION_GAME_PIECES_H_
2#define Y2023_VISION_GAME_PIECES_H_
3
4#include "aos/events/shm_event_loop.h"
5#include "frc971/vision/vision_generated.h"
6#include "y2023/vision/game_pieces_generated.h"
Filip Kujawa8c76e5d2023-04-08 16:20:27 -07007#include "y2023/vision/yolov5.h"
8
Filip Kujawa3004f202023-02-12 16:41:40 -08009namespace y2023 {
10namespace vision {
11
12using namespace frc971::vision;
13
14// Takes in camera images and detects game pieces in the image.
15// Note: Actual detection has not been implemented yet.
16class GamePiecesDetector {
17 public:
18 GamePiecesDetector(aos::EventLoop *event_loop);
19
20 void ProcessImage(const CameraImage &camera_image);
21
22 private:
23 aos::Sender<GamePieces> game_pieces_sender_;
Filip Kujawa8c76e5d2023-04-08 16:20:27 -070024 std::unique_ptr<YOLOV5> model;
Filip Kujawa3004f202023-02-12 16:41:40 -080025};
26} // namespace vision
27} // namespace y2023
28#endif