Some elements had vague caps, such as "video/x-raw-rgb", which caused problems
at least with textwrite. For other elements, the underlying OpenCV functions
support more than just one image type, so I increased the number of supported
caps.
I created a utility function "gst_opencv_caps_from_cv_image_type", so each
element creates caps directly from OpenCV image types, such as CV_8UC1 for
8-bit grayscale. This function uses gstvideo to create uniform caps.
https://bugzilla.gnome.org/show_bug.cgi?id=635304
Compile with -DCV_NO_BACKWARD_COMPATIBILITY for now, so that the compat header
doesn't get included, which causes compiler warnings that (it seems) can't be
switched off easily. As a result, we also specify a max. version in configure,
so the build doesn't break if our code doesn't compile against newer opencv
versions any more with that flag.
Override CV_INLINE to avoid 'unused' gcc warnings. GLib will take care of defining
'inline' sufficiently and OpenCV's define isn't good enough to avoid 'unused'
compiler warnings (at least in version 2.1.0).
Add a message to be post when faces are found on a frame that
contains all faces on a single message and also has
timestamp/running/segment times for that buffer so it
can be identified.
This message is called 'facedetect' and has a 'faces' list
of structures with all faces.
The old 'face' message is still posted for each face found, but
it is not really useful as it doesn't have any reference to the
buffer that generated it.
Adds new cvlaplace element.
Also adds a new opencvbasetransform function to be overriden
by children classes: the cv_set_caps, it allows children classes
to know what are they going to handle and prepare properly.
Deactivate blur-no-scale because basetransform doesn't provide a way
to override getcaps for pads, always using templatecaps independent
of properties.
Allocate a new output buffer instead of using the input buffer
pointing to the internal cvCEdge opencv's IplImage data, which
might change, consequently changing the buffer.
* Implement pyramid segmentation element
* Make masking optional on edgedetect
* Clean up edgedetect, add element details
* Implemented edge detect element