Hi, I'm using EmguCV 3.1 for C# and I'd like to know where is the difference between Capture.Retrieve and Capture.QueryFrame? And why are there two methods to get the same image (since emgu is only a wrapper for opencv and in opencv VideoCapture has only retrieve to get the image (read is a combination of grab + retrieve and >> is read in other notation))
I've tried to find a difference using Capture.ImageGrabbed
event and a own thread with Capture.Grab
+ Capture.Retrieve
/ Capture.QueryFrame in following combinations but it seems there is no difference at all. Same framerate, size, color depth..
- ImageGrabbed: Retrieve(mat,0) results in a colored image
- ImageGrabbed: Retrieve(mat,1) results in a colored image, too
- ImageGrabbed: QueryFrame results in a StackOverflowException (for whatever reason)
- Thread: Grab + Retrieve results in a colored image
- Thread: QueryFrame results in a colored image
But no difference seen yet. Anyone an idea?