MATLAB Answers

Stomach detection and tracking

3 views (last 30 days)
Itai Kadosh
Itai Kadosh on 11 Sep 2016
Commented: Image Analyst on 13 Sep 2016

Hi,

I need to track a laser spot in a ROI which locate on a human stomach, for medical treatment. I capture the stomach with camera and I mark ROI on stomach by using the first frame.

I would like to know, how can I make tracking (in real-time) on the stomach ROI which I defined at the beginning??

I saw the face detection and tracking example (in the link: http://www.mathworks.com/help/vision/examples/face-detection-and-tracking-using-live-video-acquisition.html), but the code detects only faces. Can I use the above code with relatively small changes?

Thanks,

Itai

  0 Comments

Sign in to comment.

Answers (2)

Walter Roberson
Walter Roberson on 11 Sep 2016
The Face Detection and Tracking makes use of Cascade Object Detector, especially Viola-Jones. It might be possible for you to train a Cascade Object Detector on stomach ROIs; once you had that trained then the tracking would be pretty similar to the face tracking code. The training might be a bit of a nuisance though.
But I am not certain at the moment if you need to track the dynamic stomach ROI, or if you just need to track the laser spot? Tracking the laser spot is probably a much easier task as it can probably be tracked by brightness or color.

  4 Comments

Show 1 older comment
Image Analyst
Image Analyst on 12 Sep 2016
The laser will be located with respect to the pixels on the sensor. If you want to locate it with respect to a moving body in the image then you will also have to locate the body. This is done easiest if you have a landmark on the body, like you've drawn an "X" on the body in a place that will always be in the field of view. Then you can also find the X and get the deltaX and deltaY of the laser spot from the X centroid. In my answer, I showed you how to find colors in a moving object in a video, so you should be able to adapt that easily to find two colors instead of 1.
Itai Kadosh
Itai Kadosh on 13 Sep 2016
Hi, How am I supposed to consider in the rotation if the body will rotate? The tracking on the "X" landmark isn't supposed to be made according to the shape of the landmark ? Or is it better to make a tracking according to colors? Using this method, the laser can be updating with the correct coordinates in real time with microprocessor or I need to use in FPGA?
Thanks!
Image Analyst
Image Analyst on 13 Sep 2016
If you're considering this as a 2-D problem, like the laser is normal to the skin surface, then rotation doesn't matter. If it's a 3-D situation where the laser hits the surface at an extreme angle and the rotations will be by extreme amounts (not sure why you can't secure the patient better though), then you will need to have two landmarks on the patient or else be able to see the edges of the body.

Sign in to comment.


Image Analyst
Image Analyst on 12 Sep 2016
See my tracking demo, attached, where I track green in a Sharpie marker moving in a video. You simply need to change it from green to red if you're using a red laser.

  0 Comments

Sign in to comment.