Commit graph

297 commits

Author SHA1 Message Date
Robert Jobbagy
bd3cefeecc faceblur: facedetect: add properties to faceblur
Makes faceblur have the same properties as facedetect. Also improves
the standard defaults and makes them the same in the 2 elements
2014-07-30 16:43:10 -03:00
Robert Jobbagy
43a4498569 faceblur: post message when profile loading fails 2014-07-30 16:43:10 -03:00
Robert Jobbagy
555d29681b facedetect: faceblur: update launch line examples
Reflect 1.0 and more useful examples
2014-07-30 16:43:10 -03:00
David Rothlisberger
f5992a6cdd opencv templatematch: Set caps to BGR order
templatematch operates on BGR data. In fact, OpenCV's IplImage always
stores color image data in BGR order -- this isn't documented at all in
the OpenCV source code, but there are hints around the web (see for
example
http://www.cs.iit.edu/~agam/cs512/lect-notes/opencv-intro/opencv-intro.html#SECTION00041000000000000000
and http://www.comp.leeds.ac.uk/vision/opencv/iplimage.html ).

gst_templatematch_load_template loads the template (the image to find)
from disk using OpenCV's cvLoadImage, so it is stored in an IplImage in
BGR order. But in gst_templatematch_chain, no OpenCV conversion
functions are used: the imageData pointer of the IplImage for the video
frame (the image to search in) is just set to point to the raw buffer
data. Without this fix, that raw data is in RGB order, so the call to
cvMatchTemplate ends up comparing the template's Blue channel against
the frame's Red channel, producing very poor results.
2014-07-28 14:22:27 -03:00
Thiago Santos
aa5e25820b templatematch: mark pads as proxy caps
Allows negotiation to happen properly
2014-07-28 14:18:02 -03:00
William Manley
1b5483eef9 templatematch: Produce a warning message if we can't load a template image 2014-07-28 14:18:02 -03:00
William Manley
88cb33a1dc templatematch: Match rectangle grows redder with increased match certainty
This is useful for debugging your matches as it indicates how certain the
match was in addition to its position.
2014-07-28 14:18:02 -03:00
William Manley
b608767288 templatematch: Allow changing template property on the fly
Previously changing the template property resulted in an exception
thrown from cvMatchTemplate, because "dist_image" (the intermediate
match-certainty-distribution) was the wrong size (because the
template image size had changed).

Locking has also been added to allow changing the properties (e.g. the
pattern to match) while the pipeline is playing.

 * gst_element_post_message is moved outside of the lock, because it will
   call into arbitrary user code (otherwise, if that user code calls into
   gst_templatematch_set_property on this same thread it would deadlock).

 * gst_template_match_load_template: If we fail to load the new template
   we still unload the previous template, so this element becomes a no-op
   in the pipeline. The alternative would be to keep the previous template;
   I believe unloading the previous template is a better choice, because it
   is consistent with the state this element would be in if it fails to
   load the very first template at start-up.

Thanks to Will Manley for the bulk of this work; any errors are probably
mine.
2014-07-28 14:18:01 -03:00
David Rothlisberger
c77808055d templatematch: Pass video through when nothing to match against
The early return was bypassing the call to gst_pad_push. With no
filter->template (and thus no filter->cvTemplateImage) the rest of this
function is essentially a no-op (except for the call to gst_pad_push).

This (plus the previous commit) allows templatematch to be
enabled/disabled without removing it entirely from the pipeline, by
setting/unsetting the template property.
2014-07-28 14:17:28 -03:00
William Manley
056d652b92 templatematch: Remove no-op call to gst_templatematch_load_template
We have just set filter->template to NULL, so
gst_templatematch_load_template did nothing.
2014-07-28 11:26:13 -03:00
Nicola Murino
bd4ae18938 facedetect: improve enum GstFaceDetectUpdates descriptions
https://bugzilla.gnome.org/show_bug.cgi?id=730509
2014-07-22 06:39:21 -03:00
Nicola Murino
3896dd8413 facedetect: make updates on_change works as expected
https://bugzilla.gnome.org/show_bug.cgi?id=730509
2014-07-22 06:39:21 -03:00
Sebastian Dröge
0ea13d7a65 motioncells: Use no network API if not required 2014-07-11 13:25:18 +02:00
Alexey Pavlov
365d0cfb32 ext: Include winsock.h on Windows when required
https://bugzilla.gnome.org/show_bug.cgi?id=733052
2014-07-11 13:21:21 +02:00
Nicolas Dufresne
25c289f6c4 facedetect: Make cascades dir a little more portable 2014-07-04 21:13:49 -04:00
Nicolas Dufresne
09fc19b83f handdetect: Use already mapped image
No need to map again the image, it's already handled by the base class.
2014-07-04 21:13:49 -04:00
Nicolas Dufresne
efde572cec handdetect: Move size warning in set_caps so it's called once 2014-07-04 21:13:49 -04:00
Nicolas Dufresne
34e23c2e21 faceblur: Port to OpencvVideoFilter base class
This fixes issue whit black frames when special memory, like GlMemory is
in used.

https://bugzilla.gnome.org/show_bug.cgi?id=732756
2014-07-04 21:13:49 -04:00
Nicolas Dufresne
42a83d2c64 cvvideofilter: Don't try to make buffer writable
First this is handle by base transform, hence this is a no-op, and if it wasn't it
would lead to a buffer copy being leaked, and then an unreffed buffer being
pushed downstream.

https://bugzilla.gnome.org/show_bug.cgi?id=732756
2014-07-04 21:13:11 -04:00
Nicolas Dufresne
2acdb2ecf2 cvvideofilter: Check buffer_map return value
Check the resturn value and cleanly fail if we could not mapped the buffers.

https://bugzilla.gnome.org/show_bug.cgi?id=732756
2014-07-04 21:12:38 -04:00
Thiago Santos
f2400d7f16 faceblur: release the haar cascade 2014-06-30 11:54:41 -03:00
Sebastian Dröge
e77a93f6a8 segmentation: Release memory storage in finalize 2014-06-30 00:22:22 +02:00
Sebastian Dröge
d5e7c7bffe textoverlay: Release memory storage and resize image when caps change 2014-06-30 00:18:20 +02:00
Sebastian Dröge
2683c87863 templatematch: Release cvImages when reloading templates are changing caps 2014-06-30 00:15:38 +02:00
Sebastian Dröge
7e0503ca89 pyramidsegment: Release image when changing caps or reusing the element 2014-06-30 00:12:26 +02:00
Sebastian Dröge
e1366c29be handdetect: Release memory storage 2014-06-30 00:09:28 +02:00
Sebastian Dröge
ae1027297c faceblur: Release memory storage
And also release cvImages and memory storage when changing caps or reusing the
element.
2014-06-30 00:07:22 +02:00
Sebastian Dröge
48e95f3d6f edgedetect: Don't leak cvImages when caps are changing or the element is reused 2014-06-30 00:05:53 +02:00
Sebastian Dröge
45ac4ba663 pyramidsegment: Release memory storage when finalizing 2014-06-29 23:43:07 +02:00
Sebastian Dröge
dcccabfe22 textoverlay: Free text buffer in finalize 2014-06-29 22:30:56 +02:00
Nicola Murino
845d33098a motioncells: improve logging
https://bugzilla.gnome.org/show_bug.cgi?id=730141
2014-05-30 16:58:59 -03:00
Nicola Murino
f48358636b motioncells: make framedrop work at 30 fps too
https://bugzilla.gnome.org/show_bug.cgi?id=730141
2014-05-30 16:58:59 -03:00
Nicola Murino
b5cefffb9f motioncells: use standard macro for boolean
https://bugzilla.gnome.org/show_bug.cgi?id=730141
2014-05-30 16:58:59 -03:00
Nicola Murino
bd34e62872 motioncells: fix memleak
Check gst_buffer_map return and remember to unmap and free memory before
returning

https://bugzilla.gnome.org/show_bug.cgi?id=730133
2014-05-14 20:15:05 -03:00
Sebastian Dröge
43e73bc3e9 motioncells: Remove unused private fields 2014-02-08 19:29:33 +01:00
Sebastian Dröge
50321b1ccd segmentation: Fix integer underflow check
error: comparison of unsigned expression < 0 is
always false [-Werror,-Wtautological-compare]
2014-02-08 19:28:26 +01:00
Sebastian Dröge
e8d569f54d faceblur: set maximum feature size to 0x0
Previously faces would only be detected if they were at least 30x30 pixels
large and at most 32x32 pixels. We keep the minimum setting (maybe needs
a property as in facedetect) but disable the maximum feature size.

See https://bugzilla.gnome.org/show_bug.cgi?id=722158
2014-01-14 10:38:37 +01:00
Kipp Cannon
b33b1390cc facedetect: set maximum feature size to 0x0
This disables the "max feature size" feature. The current configuration
is totally busted: The max feature size is hard-coded to 2 pixels more
than the user-supplied min feature size which pretty much means you need
to guess the size of the person's face to within a few pixels to get the
code to find it.

https://bugzilla.gnome.org/show_bug.cgi?id=722158
2014-01-14 10:37:41 +01:00
Tim-Philipp Müller
2d29f22338 opencv: don't unref NULL caps in finalize
Fixes gst-inspect-1.0 -a and generic states unit test.
2013-09-29 23:43:23 +01:00
Nicola Murino
e481ecbf22 facedetect: new property to control bus messages updates
https://bugzilla.gnome.org/show_bug.cgi?id=655622
2013-08-23 13:12:28 +02:00
Sebastian Dröge
21ea46568b opencv: Fix indention 2013-08-23 12:01:32 +02:00
Sebastian Dröge
5e25d41b84 opencv: Port to non-deprecated GMutex/GCond API 2013-08-23 12:01:07 +02:00
Miguel Casas-Sanchez
fbb5dd38c7 opencv: Add disparity-map calculation element
https://bugzilla.gnome.org/show_bug.cgi?id=704760
2013-08-23 11:58:21 +02:00
Miguel Casas-Sanchez
7c2177b19f grabcut: Add GrabCut segmentation element
https://bugzilla.gnome.org/show_bug.cgi?id=702722
2013-07-17 11:28:28 +02:00
Tim-Philipp Müller
67e71d7931 opencv: fix CFLAGS order and add plugins base libs includes to CXXFLAGS
https://bugzilla.gnome.org/show_bug.cgi?id=702297
2013-06-18 12:47:34 +01:00
Alban Browaeys
90b51562ab opencv: fixes build by moving the c++ header to gstsegmentation.cpp
Fixes:
In file included from gstsegmentation.h:51:0,
                 from gstopencv.c:42:
/usr/include/opencv2/video/background_segm.hpp:47:16: fatal error: list:
No such file or directory
 #include <list>
                ^
compilation terminated.

https://bugzilla.gnome.org/show_bug.cgi?id=702297
2013-06-18 13:37:26 +02:00
Miguel Casas-Sanchez
c313e1d3b8 opencv: add foreground/background segmentation element
Add an element to the opencv plugin for foregroung/background image
sequence segmentation, using one out of 3 algorithms.

https://bugzilla.gnome.org/show_bug.cgi?id=701421
2013-06-11 14:32:43 +02:00
Miguel Casas-Sanchez
407f3e1856 opencv: Add colour image enhancement element based on Retinex algorithm
Add colour image enhancement element based on Retinex algorithm. Two types
exist, namely basic and multiscale; both are described in this article:

Rahman, Zia-ur, Daniel J. Jobson, and Glenn A. Woodell. "Multi-scale retinex
for color image enhancement." Image Processing, 1996. Proceedings.,
International Conference on. Vol. 3. IEEE, 1996

Visually speaking the result looks a bit funny, but is pretty invariable to
lightning changes, which is good for some applications, like image
segmentation.

https://bugzilla.gnome.org/show_bug.cgi?id=700977
2013-05-27 11:27:20 +02:00
Miguel Casas-Sanchez
ac4efd2914 opencv: Add skin color detection element
https://bugzilla.gnome.org/show_bug.cgi?id=700654
2013-05-23 11:05:28 +02:00
Sebastian Dröge
e51cd4fe2f gst: Add better support for static plugins 2013-04-15 15:59:22 +02:00
Todd Agulnick
71743d13c4 handdetect: fix build on OS/X
gsthanddetect.h:84: error: expected specifier-qualifier-list before 'uint'

https://bugzilla.gnome.org/show_bug.cgi?id=697305
2013-04-05 09:41:26 +01:00
Tim-Philipp Müller
dec865b2ff opencv: use pkgdatadir locally to construct path for custom haar cascades
https://bugzilla.gnome.org/show_bug.cgi?id=685655
2013-03-01 00:14:54 +00:00
Sreerenj Balachandran
757e7c25bf opencv: port handdetect element to 1.0 and add to build
https://bugzilla.gnome.org/show_bug.cgi?id=685655
2013-03-01 00:14:54 +00:00
Andol Li
7faa44057e opencv: add handdetect plugin, initial implementation
The handdetect plugin is for detecting hand gestures using
opencv.

It was created in the course of the Google Summer of Code.

https://bugzilla.gnome.org/show_bug.cgi?id=685655
2013-03-01 00:14:54 +00:00
Tim-Philipp Müller
9e1b75fda3 Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:09:59 +00:00
Tim-Philipp Müller
fa20fba1a2 opencv: fix warnings and build against opencv 2.4.x
gstpyramidsegment.c: In function 'gst_pyramid_segment_chain':
gstpyramidsegment.c:307:3: error: implicit declaration of function
'cvPyrSegmentation' [-Werror=implicit-function-declaration]
gstpyramidsegment.c:307:3: error: nested extern declaration of
'cvPyrSegmentation' [-Werror=nested-externs]

https://bugzilla.gnome.org/show_bug.cgi?id=687237
2012-11-03 13:52:08 +00:00
Tim-Philipp Müller
32ba17cd0f Use gst_element_class_set_static_metadata()
where possible. Avoids some string copies. Also re-indent
some stuff. Also some indent fixes here and there.
2012-10-17 17:46:34 +01:00
Mark Nauwelaerts
578861abea replace gst_element_class_set_details_simple with gst_element_class_set_metadata 2012-09-14 17:27:49 +02:00
Wim Taymans
b8f913555d ffmpegcolorspace is no more 2012-09-14 16:45:34 +02:00
Wim Taymans
0d8f8a5134 rename some caps and elements in examples 2012-09-14 16:29:23 +02:00
Tim-Philipp Müller
1ef529601b opencv: disable motioncells "date" property for now
Shouldn't be of type long. Not sure it's useful at all, so
just disable it for now to see if someone misses it.
2012-09-09 23:52:41 +01:00
Tim-Philipp Müller
41a39d93bf celt, opencv, wayland, dvbsub, festival, hls: printf format fixes 2012-07-15 12:27:12 +01:00
Sreerenj Balachandran
45ca8876b2 opencv: port to 0.11
Basic port to 0.11 API.

https://bugzilla.gnome.org/show_bug.cgi?id=679164
2012-07-14 13:37:55 +01:00
Sebastian Dröge
cda192b3b7 gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 18:02:56 +02:00
Sebastian Dröge
1318a97e0a gst: Update versioning 2012-04-04 14:44:34 +02:00
Sebastian Dröge
860ccd414d Merge remote-tracking branch 'origin/0.10'
Conflicts:
	NEWS
	RELEASE
	common
	configure.ac
	docs/libs/gst-plugins-bad-libs-sections.txt
	docs/plugins/gst-plugins-bad-plugins.args
	docs/plugins/gst-plugins-bad-plugins.hierarchy
	docs/plugins/gst-plugins-bad-plugins.interfaces
	docs/plugins/inspect/plugin-adpcmdec.xml
	docs/plugins/inspect/plugin-adpcmenc.xml
	docs/plugins/inspect/plugin-assrender.xml
	docs/plugins/inspect/plugin-audiovisualizers.xml
	docs/plugins/inspect/plugin-autoconvert.xml
	docs/plugins/inspect/plugin-bayer.xml
	docs/plugins/inspect/plugin-bz2.xml
	docs/plugins/inspect/plugin-camerabin2.xml
	docs/plugins/inspect/plugin-celt.xml
	docs/plugins/inspect/plugin-dataurisrc.xml
	docs/plugins/inspect/plugin-debugutilsbad.xml
	docs/plugins/inspect/plugin-dtmf.xml
	docs/plugins/inspect/plugin-dtsdec.xml
	docs/plugins/inspect/plugin-dvbsuboverlay.xml
	docs/plugins/inspect/plugin-dvdspu.xml
	docs/plugins/inspect/plugin-faac.xml
	docs/plugins/inspect/plugin-faad.xml
	docs/plugins/inspect/plugin-gsm.xml
	docs/plugins/inspect/plugin-h264parse.xml
	docs/plugins/inspect/plugin-mms.xml
	docs/plugins/inspect/plugin-modplug.xml
	docs/plugins/inspect/plugin-mpeg2enc.xml
	docs/plugins/inspect/plugin-mpegdemux2.xml
	docs/plugins/inspect/plugin-mpegtsdemux.xml
	docs/plugins/inspect/plugin-mpegvideoparse.xml
	docs/plugins/inspect/plugin-mplex.xml
	docs/plugins/inspect/plugin-pcapparse.xml
	docs/plugins/inspect/plugin-rawparse.xml
	docs/plugins/inspect/plugin-rtpmux.xml
	docs/plugins/inspect/plugin-rtpvp8.xml
	docs/plugins/inspect/plugin-scaletempo.xml
	docs/plugins/inspect/plugin-schro.xml
	docs/plugins/inspect/plugin-sdp.xml
	docs/plugins/inspect/plugin-segmentclip.xml
	docs/plugins/inspect/plugin-shm.xml
	docs/plugins/inspect/plugin-videomaxrate.xml
	docs/plugins/inspect/plugin-videoparsersbad.xml
	docs/plugins/inspect/plugin-vp8.xml
	docs/plugins/inspect/plugin-y4mdec.xml
	ext/celt/gstceltdec.c
	ext/dts/gstdtsdec.c
	ext/modplug/gstmodplug.cc
	ext/opus/gstopusenc.c
	gst-libs/gst/video/gstbasevideocodec.c
	gst-libs/gst/video/gstbasevideocodec.h
	gst-libs/gst/video/gstbasevideodecoder.c
	gst-libs/gst/video/gstbasevideodecoder.h
	gst-libs/gst/video/gstbasevideoencoder.c
	gst-libs/gst/video/gstbasevideoencoder.h
	gst/adpcmdec/Makefile.am
	gst/audiovisualizers/gstbaseaudiovisualizer.c
	gst/h264parse/gsth264parse.c
	gst/mpegdemux/mpegtsparse.c
	gst/mpegtsdemux/mpegtsbase.c
	gst/mpegtsdemux/mpegtspacketizer.c
	gst/mpegtsdemux/mpegtsparse.c
	gst/mpegtsdemux/tsdemux.c
	gst/mpegtsdemux/tsdemux.h
	gst/mxf/mxfdemux.c
	gst/rawparse/gstaudioparse.c
	gst/videoparsers/gsth263parse.c
	gst/videoparsers/gsth264parse.c
	sys/d3dvideosink/d3dvideosink.c
	sys/decklink/gstdecklinksink.cpp
	sys/dvb/gstdvbsrc.c
	sys/shm/gstshmsrc.c
	sys/vdpau/h264/gstvdph264dec.c
	sys/vdpau/mpeg/gstvdpmpegdec.c
	tests/examples/opencv/gst_element_print_properties.c
	win32/common/config.h
2012-03-29 17:41:53 +02:00
Nicola Murino
362727b9f4 facedetect: fix structure leak
https://bugzilla.gnome.org/show_bug.cgi?id=672294
2012-03-18 00:52:25 +00:00
Nicola Murino
0fad58c123 opencv: fix memory leak
https://bugzilla.gnome.org/show_bug.cgi?id=672295
2012-03-18 00:40:33 +00:00
Tim-Philipp Müller
692bf9ba63 opencv: fix configure check and build with opencv 2.1
AC_CHECK_HEADERS() calls action-if-not-found also if just one of
the headers checked for is missing, which is not what we wanted.
Also, check for highgui_c.h instead of highgui.hpp.

https://bugzilla.gnome.org/show_bug.cgi?id=672226
2012-03-17 14:53:50 +00:00
Stefan Sauer
486ddd38cf facedetect: initialize some arbitrary variable that gcc-4.6 can track properly
The access to them is clearly guarded by the booleans though.
2012-03-16 17:07:46 +01:00
Stefan Sauer
99fb8e941a opencv: cosmetic code changes
Check for the availability of the detectors in the processing function to avoid
setting up the ROIs. Use the booleans for have_xxx more.
2012-03-16 13:14:48 +01:00
Stefan Sauer
d4509a2fda opencv: use opencv prefix from pkgconfig to lookup datafiles
Don't hardconde /usr to lookup datafiles (such as haar cascades).
2012-03-16 12:58:56 +01:00
Stefan Sauer
2311a0ac0e facedetect: skip detection for unavailable detectors 2012-03-16 12:04:11 +01:00
Stefan Sauer
6fde848ada facedetect: move the detector to an own method to hide the ugly ifdefs
This improves the readability in the actual processing function.
2012-03-15 23:17:55 +01:00
Stefan Sauer
fbcee587f4 facedetect: always send facedetect message
The application might like to know, when we don't see the face anymore.
2012-03-15 23:08:40 +01:00
Stefan Sauer
3d7c8aad70 facedetect: don't skip faces
Skipping faces at this point makes us lie about the num-ber of faces and also
causes leaks.
2012-03-15 22:34:45 +01:00
Tim-Philipp Müller
61ca28696f opencv: make build with opencv 2.3.1 as in debian sid
Where highgui.h doesn't exist any more, but only opencv2/highgui/highgui.hpp.
Also, not quite sure why we're checking for cvaux.h, it's not used anywhere.
2012-03-15 00:05:41 +00:00
Sebastian Dröge
a2a4300241 Merge branch 'master' into 0.11
Conflicts:
	configure.ac
	ext/kate/gstkateenc.c
	gst/colorspace/colorspace.c
	gst/mpegvideoparse/mpegvideoparse.c
2012-01-25 13:22:43 +01:00
Vincent Penquerc'h
1dfbb14be5 opencv: fix missing finalize chaining to parent class
Not compiled, I do not have the necessary dependencies.
2012-01-16 17:10:30 +00:00
Edward Hervey
f70a623418 Merge remote-tracking branch 'origin/master' into 0.11-premerge
Conflicts:
	docs/libs/Makefile.am
	ext/kate/gstkatetiger.c
	ext/opus/gstopusdec.c
	ext/xvid/gstxvidenc.c
	gst-libs/gst/basecamerabinsrc/Makefile.am
	gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c
	gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h
	gst-libs/gst/video/gstbasevideocodec.c
	gst-libs/gst/video/gstbasevideocodec.h
	gst-libs/gst/video/gstbasevideodecoder.c
	gst-libs/gst/video/gstbasevideoencoder.c
	gst/asfmux/gstasfmux.c
	gst/audiovisualizers/gstwavescope.c
	gst/camerabin2/gstcamerabin2.c
	gst/debugutils/gstcompare.c
	gst/frei0r/gstfrei0rmixer.c
	gst/mpegpsmux/mpegpsmux.c
	gst/mpegtsmux/mpegtsmux.c
	gst/mxf/mxfmux.c
	gst/videomeasure/gstvideomeasure_ssim.c
	gst/videoparsers/gsth264parse.c
	gst/videoparsers/gstmpeg4videoparse.c
2011-12-30 11:41:17 +01:00
Nicola Murino
b5ebf76d32 replace propset_mutex with GST_OBJECT_LOCK 2011-11-30 15:11:50 +01:00
Vincent Penquerc'h
7521b597f4 various: fix pad template ref leaks
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:08:27 +00:00
Stefan Sauer
181be8d52b opencv: port baseclass to 0.11 2011-11-25 23:11:32 +01:00
Stefan Sauer
b7cb6ecedb opencv: use caps constants more 2011-11-18 20:57:31 +01:00
Stefan Sauer
4f69b60ac0 opencv: fixup doc blobs 2011-11-18 20:57:31 +01:00
Stefan Sauer
c613904c68 opencv: fixup gobject naming conventions 2011-11-18 20:57:31 +01:00
Stefan Sauer
ee91057526 opencv: remove empty finalize implementations 2011-11-18 08:30:37 +01:00
Stefan Sauer
fefa1df8b9 facedetect: detect face features
Also detect mouth, nose and eyes. Drop faces that don't have them. Fixes leaking the
cascades. Adds more docs.
2011-11-16 21:03:36 +01:00
Stefan Sauer
a857c90590 facedetect: Gstfacedetect -> GstFacedetect 2011-11-16 21:03:36 +01:00
Stefan Sauer
94534a0b83 facedetect: code maintenance
Update example to be useful. Draw colored ellipses instead of unicolor circles.
Reflow code for more local variables. Improve parameter descriptions.
2011-11-16 21:03:36 +01:00
Mart Raudsepp
61cc352902 mimic, opencv, vp8, acmmp3dec, linsys: Don't build static plugins
Pass --tag=disable-static to libtool everywhere where it's been forgotten

https://bugzilla.gnome.org/show_bug.cgi?id=663768
2011-11-11 11:54:15 +00:00
Nicola Murino
436620fff9 fix valgrind warning about Conditional jump or move depends on uninitialised value(s) 2011-08-26 15:54:19 +02:00
Nicola Murino
71a2a1be8e Move m_pprevFrame free just before the clone of the latest frame for readability 2011-08-26 15:54:19 +02:00
Stefan Sauer
f241dafe5c motioncells: turn two global vars into static variables
Move 2 variable to motioncells_warpper and make them static.
2011-08-04 13:36:05 +02:00
Tim-Philipp Müller
7e49dad23b Fix some more variable-set-but-not-used compiler warnings 2011-08-02 22:57:15 +01:00
Robert Jobbagy
4723a5d90c motioncells: new element to detect areas of motion 2011-07-28 10:28:50 +02:00
Sreerenj Balachandran
c0f9c74ca6 facedetect: Remove dead code and some minor doc changes. 2011-05-14 12:08:39 +02:00
Sreerenj Balachandran
3320a03e20 edgedetect: Remove dead code and some minor doc changes 2011-05-14 12:08:39 +02:00
Fabrizio Milo
7e5c7048d6 opencv: make work with openCV 2.2
https://bugzilla.gnome.org/show_bug.cgi?id=641796
2011-04-22 09:38:15 +01:00
Sreerenj Balachandran
d6a1eebf37 opencv text overlay: rename and docuemnt
Rename the element textwrite to opencvtextoverlay. Add proper structuring to
opencv textoverlay element.

Fixes: #640561
2011-03-28 20:31:35 +03:00
Edward Hervey
4067ef886d opencv: Remove dead assignments
... and fix indentation
2010-11-25 18:43:05 +01:00
Josh Doe
6e43f75df3 opencv: fix caps issues and extend supported caps for some elements
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
2010-11-22 22:25:18 -03:00
Stefan Kost
0387a89cad various (ext): add missing G_PARAM_STATIC_STRINGS flags
Canonicalize property names as needed.
2010-10-19 17:13:26 +03:00
Tim-Philipp Müller
960ccc118f opencv: define CV_NO_BACKWARD_COMPATIBILITY to suppress warnings caused by compat header
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.
2010-09-09 15:29:31 +01:00
Tim-Philipp Müller
41b9b76fa5 opencv: avoid 'unused' compiler warnings with inline functions in opencv headers
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).
2010-09-09 15:29:31 +01:00
Tim-Philipp Müller
e2b45f5155 opencv: update plugin source package name and origin 2010-09-09 15:29:31 +01:00
Thiago Santos
19ba4c8d19 facedetect: Add more parameters
Expose the parameters of cvHaarDetectObjects in facedetect
element.
2010-09-08 23:59:38 -03:00
Thiago Santos
27fedbb352 opencv: Refactor files structure
Remove internal folders and put all code inside the main plugin
folder. Also fixes some building warnings.
2010-09-08 17:15:51 -03:00
Thiago Santos
cf86df2d00 opencv: Adds new plugin opencv
Moves opencv plugin from http://github.com/Elleo/gst-opencv
into -bad module.
2010-09-08 17:15:51 -03:00
Thiago Santos
0c61434945 facedetect: Post an useful message
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.
2010-09-08 17:15:51 -03:00
Thiago Santos
77fe3e6a07 facedetect: Use GstOpencvVideoFilter as the base class
Port facedetect to use GstOpencvVideoFilter as the base class
to inherit all the goodness that GstBaseTransform/GstVideoFilter
already handles.
2010-09-08 17:15:51 -03:00
Thiago Santos
dcb97354bf opencvbasetrans: Use GstVideoFilter as the base class
Port from GstBaseTransform to GstVideoFilter as the base class.
2010-09-08 17:15:50 -03:00
Thiago Santos
4c03c980ce cvlaplace: adds new cvlaplace element
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.
2010-09-08 17:15:50 -03:00
Thiago Santos
e17b555efd Adds new element cvsobel 2010-09-08 17:15:50 -03:00
Thiago Santos
8f5b32f764 Adds new element cvequalizehist 2010-09-08 17:15:50 -03:00
Thiago Santos
f38911209d Adds new elements cvdilate and cverode
Adds 2 similar elements (so similar they have their own baseclass),
cvdilate and cverode.
2010-09-08 17:15:50 -03:00
Thiago Santos
128091a1cc cvsmooth: Improve parameters docs 2010-09-08 17:15:50 -03:00
Thiago Santos
f770de8a8b cvsmooth: Deactivating blur-no-scale
Deactivate blur-no-scale because basetransform doesn't provide a way
to override getcaps for pads, always using templatecaps independent
of properties.
2010-09-08 17:15:50 -03:00
Thiago Santos
971fe3ae0c cvsmooth: Add support for video/x-raw-gray 2010-09-08 17:15:50 -03:00
Thiago Santos
824d69d5ad Adding gstopencvutils
Adds a file to keep utilitary functions together
2010-09-08 17:15:50 -03:00
Thiago Santos
f47c4d3905 cvsmooth: Adds new element cvsmooth
Adds new cvsmooth element
2010-09-08 17:15:50 -03:00
Thiago Santos
6fd5cb9b62 gstopencvbasetrans: Adds this new base class
Adds GstOpencvBaseTransform as base class for simple 1:1
opencv filters
2010-09-08 17:15:49 -03:00
Thiago Santos
b8b0c39a63 pyramidsegment: Allocate a new buffer for output
Use a newly allocated buffer for output, and release the intermediary
image used.

Also add a TODO for performance improvement
2010-09-08 17:15:49 -03:00
Thiago Santos
5a9d9a8ae0 faceblur: facedetect: templatematch: textwrite: Set buffer to writable
These elements operates in place, set buffer to writable before
operating.
2010-09-08 17:15:49 -03:00
Thiago Santos
42984056db edgedetect: Fix chain buffer handling
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.
2010-09-08 17:15:49 -03:00
Thiago Santos
069c1369a2 configure: enable -Werror to improve code
-Werror on git version is useful to keep code clean.
2010-09-08 17:15:49 -03:00
Sreerenj Balachandran
a33e117af7 Added the property for setting the RGB colours.
modified:   ext/opencv/textwrite/gsttextwrite.c
	modified:   ext/opencv/textwrite/gsttextwrite.h
2010-09-08 17:15:49 -03:00
Sreerenj Balachandran
6d4f9ceeb5 Added the property for setting the "thickness" of font
modified:   ext/opencv/textwrite/gsttextwrite.c
	modified:   ext/opencv/textwrite/gsttextwrite.h
2010-09-08 17:15:49 -03:00
Sreerenj Balachandran
ce5eb639cd Added the property for setting x and y co-ordinates
modified:   ext/opencv/textwrite/gsttextwrite.c
	modified:   ext/opencv/textwrite/gsttextwrite.h
2010-09-08 17:15:49 -03:00
Sreerenj Balachandran
d962551fb7 added the propery for setting x and y co-ordinates
modified:   ext/opencv/textwrite/gsttextwrite.c
	modified:   ext/opencv/textwrite/gsttextwrite.h
2010-09-08 17:15:49 -03:00
Mike Sheldon
96a769dc28 Apply Stefan's faceblur fixes to facedetect 2010-09-08 17:15:48 -03:00
Sreerenj Balachandran
fa8210fe94 Add simple text overlay plugin 2010-09-08 17:15:48 -03:00
Stefan Kost
af83f0afd7 faceblur: fix handling of profile property.
Dup and free the string. Fixes leaking new values and avoids crashing
gst-inspect.
2010-09-08 17:15:48 -03:00
Mike Sheldon
f35f701996 Fix includes in template matching element 2010-09-08 17:15:48 -03:00
Mike Sheldon
babe97ca50 Bring code in to line with general Gstreamer standards 2010-09-08 17:15:48 -03:00
Mike Sheldon
0961dbefd4 Fix segfault in template match element if no template has been set
Add template matching python example
Add autotool, libtool and pkgconfig dependencies to debian control file
2010-09-08 17:15:48 -03:00
Mike Sheldon
f8a49aeabd Add a plugin for automatically blurring faces in videos and images 2010-09-08 17:15:48 -03:00
Noam
6bb2bbd9c3 Added control for changing method 2010-09-08 17:15:48 -03:00
Noam
2195e2b123 Added templatematch element 2010-09-08 17:15:48 -03:00
kapil
cf9d13bb4c Registering all elements under opencv plugin 2010-09-08 17:15:48 -03:00
Mike Sheldon
2f77a06d23 Fix the profile parameter in the facedetect element to accept a string correctly 2010-09-08 17:15:47 -03:00
Mike Sheldon
4b9ae0088b Release OpenCV images when finalizing elements 2010-09-08 17:15:47 -03:00
kapil
046ca445b8 Fixed compile errors 2010-09-08 17:15:47 -03:00
Mike Sheldon
aae2576679 Make face detect send a bus message when a face is detected
Write a simple python example for face detection
2010-09-08 17:15:47 -03:00
Mike Sheldon
7408e5393e Add face detection element
Clean up some generated files
Update a few old comments
2010-09-08 17:15:47 -03:00
Mike Sheldon
b96c01f29a * Remove some autotools generated files 2010-09-08 17:15:47 -03:00
Mike Sheldon
1af8fa1066 * Make it possible to set threshold2 at runtime
* Implement pyramid segmentation element
* Make masking optional on edgedetect
* Clean up edgedetect, add element details
* Implemented edge detect element
2010-09-08 17:15:47 -03:00