operating 2 camera for motion detection in MATLAB - matlab

I am using two camera for motion detection. THese cameras are facing against each other. i wrote matlab code for single camera and it is working. Now i need to add one more camera. I did so, but the processing speed is so slow many moving object goes undetected. I am looking at block processing and parallel computing tools in matlab but have not figured out how to do it. Also, can GUI be used in image processing for parallel computation. If so how? Your help is appreciated!
Thank You.

Related

MATLAB - Run webcam parallel to processing

Hello and thank you in advance.
I am working on a MATLAB algorithm, using the computer vision toolbox, to detect objects from a live camera feed, displaying frames with bounding boxes on a deployable video player.
Due to limitations of my hardware, the detection will be slower than the maximum FPS delivered by the camera.
Now, I'd like to display the webcam video feed at maximum speed, not waiting for the detection to finish so that I will have a fluent output video with detections whenever they will be inserted.
Is there a way?
My first approach was to use the parfeval function to somehow run the detection parallel, but failed due to my lack of knowledge, how to give the frame to the detector and insert the resulting bounding boxes to the frame, "whenever they are finished".

Stereo Vision for Obstacle Detection

I'm working on stereo vision project with Halcon/NET. My project is to scanning the surface of a metal plate. Is it possible to detect small hole(1-3mm) on it with stereo vision?
If you are somewhat familiar with epipolar geometry and MRF optimization, you can have a look at this classic paper on 'Depth Estimation from Video'.
http://www.cad.zju.edu.cn/home/bao/pub/Consistent_Depth_Maps_Recovery_from_a_Video_Sequence.pdf
For camera calibration, you can use their ACTS software from here -
http://www.zjucvg.net/acts/acts.html
It accepts a video sequence and generates camera parameters and depth maps.
I hope it helps!
Yes, it is definitely possible to detect it - but I doubt you need stereo vision for it. Stereo vision is only useful when you want to recover 3D information (depth) from a scene.
Detection and classification can be achieved through deep learning methods too, it will also be probably more intuitive that way - but it depends on how unique your 'hole' is compared to the background of your scene. A problem of similar novelty has been discussed in this paper.
The same problem persists for stereo-vision, if the background of your scene has similar features to what you are trying to 'detect' it will create problems during stereo-matching.
Even if you use a simple 'edge' detector using a monocular vision system, it will still cause a problem.

Optical flow based vehicle detection and tracking MATLAB

I am working on Optical flow based vehicle detection and tracking purely on MATLAB.
Provided that camera is in motion and object is also in motion.
Previously, a lot work is done on camera in stationary condition and object moving. Optical flow vectors can easily be determined using LUCAS-KANADE method and Horn and shunck. Sipmly taking two consecutive images results are achevied. I have done tests and acheived.
There is also simulink example viptrafficof_win available.
I need to perform optical flow based detection and tracking for camera and object both in motion. What methodology shall I pursue?
If your camera is moving, you would have to separate the camera motion (ego motion) from the motion of the objects. There are different ways of doing that. Here is a recent paper describing an approach using the orientations of optical flow vectors.

How to use accelerometer, CMMotion data to locate a point in 3D space?

I am creating an application. In which iPhone will be placed (a separate cover is made for it) with golf club(racket). I want to get array of points which state the path of the racket movement.
For example, I start collecting the data when racket is on the ground. After then user prepares himself for shot. So, he will take the racket back side and then he will hit the shot by moving racket forward. I want to catch all these points in 3D and want to plot them on screen (2D projection). I saw many similar questions, accelerometer, CMMotion framework documents. But could not find a way to doing so.
I hope, I have explained the question properly. Can you suggest me some formula or how to process the data to achieve it?
Thanks in advance.
You cannot track these movements in the 3D space.
But you can track the orientation of the racket and that should work well.
I have implemented a sensor fusion algorithm for the Shimmer platform, not a trivial task. I would use Core Motion and I would not try to create my own sensor fusion algorithm.
Hope this helps, good luck!
i tried the sensors fusion algorithm developed by Madgwick, but the output, on my device, it's similar to the CoreMotion Attitude output.
I don't have the possibility to test the attitude outputs from other iPhone, but in my case, the problem it's the yaw angle, even if the iphone it's fixed on the table the yaw angle tend to be unstable, probably due to the distinct chip-placement of z-axis gyro.

MATLAB Eye Recognition

Is it possible to detect eye in the video mode in MATLAB? I am trying to detect the eye and make some predictions based on the movement of the eye. But am not sure on how to do that. Can someone help me in how to start about that? Thanks in advance.
You could take a look at this set of functions on The MathWorks File Exchange: Fast Eyetracking by Peter Aldrian.
Quoting from the description of the post (to give a little more detail here):
This project handles with the question
how to extract fixed feature points
from a given face in a real time
environment. It is based on the idea,
that a face is given by Viola Jones
Algorithm for face detection and
processed to track pupil movement in
relation to the face without using
infrared light.
My MATLAB is incredibly rusty, but this site appears to have some scripts to help track eye movement.
eye detection will be possible with MATLAB and you can come up with that. But there is a difference between recognition and detection that you need to consider carefully. Detection is checking if an object is available in the image whereas recognition is determining what the different objects in the image are.
I hope it'll increase someone's knowledge.