blob: a99a99b6a0cd24fe098db45560bb4fdda15a16b0 [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"
7
Filip Kujawa8c76e5d2023-04-08 16:20:27 -07008#include "y2023/vision/yolov5.h"
9
Filip Kujawa3004f202023-02-12 16:41:40 -080010namespace y2023 {
11namespace vision {
12
13using namespace frc971::vision;
14
15// Takes in camera images and detects game pieces in the image.
16// Note: Actual detection has not been implemented yet.
17class GamePiecesDetector {
18 public:
19 GamePiecesDetector(aos::EventLoop *event_loop);
20
21 void ProcessImage(const CameraImage &camera_image);
22
23 private:
24 aos::Sender<GamePieces> game_pieces_sender_;
Filip Kujawa8c76e5d2023-04-08 16:20:27 -070025 std::unique_ptr<YOLOV5> model;
Filip Kujawa3004f202023-02-12 16:41:40 -080026};
27} // namespace vision
28} // namespace y2023
29#endif