I am looking to detect think objects like pens, pencils and surgical instruments. The bounding box is not important, but I am looking to see if I can train a model to detect both the object as well as its orientation. Typical object detection networks like R-CNN,YOLO,SSD encode class name and bound boxes. Instead of bounding boxes, I'm looking to encode only 2 points, one starting x,y point and one ending x,y point. The start point for objects is where one would grip the object. For instance:
- The pencil eraser(start point) is pointed 50 degrees to the top right.
- The surgical instrument is 10 degrees from the x-axis and handle is pointed to the bottom right.
- Pen tip(end point) is pointing vertically upwards.
- Fork, the start point would be the grip handle part, and the end point would be in the middle where the 4 prongs are.
As long as I can encode the start and end points, then I can determine the orientation. I would need to define these points during training and the question is whether there is an existing model (mobile net/inception/RCNN) that I can encode this information in? One potential way I was thinking was to use YOLO and for the bounding box, the top left x,y would be the starting point x,y(handle) whereas the bound box width, height would be replaced with the end point x,y(pencil writing tip, fork prongs.