ZoneMinder / zoneminder

ZoneMinder is a free, open source Closed-circuit television software application developed for Linux which supports IP, USB and Analog cameras.
http://www.zoneminder.com/
GNU General Public License v2.0
5.04k stars 1.21k forks source link

Feature Request: Face and License Plate detection / Recognition #630

Closed whopperg closed 9 years ago

whopperg commented 9 years ago

Hi there,

i've tried my way with openbr/vc but i cant get it to work. So i took a look at the web and saw that there actually is a plugin for zm! (http://www.zoneminder.com/wiki/index.php/Third_Party_Patches)

Is this also included in this branch? If so, is there an Tutorial?

Cheers,

connortechnology commented 9 years ago

The guy who was developing that stuff has been away for a while. So it hasn't been merged. He mentioned that he might be back soon, in which case maybe it will get merged. My cluster ppa has his plugin framework in it, but no plugins.

Feel free to take up the torch...

manupap1 commented 9 years ago

I have done some work on this. In fact I have a local branch with the plugin framework finished (the unixmedia code does not implement full plugin support in the web interface). And I have tested the face detection and LPR plugins but none of them can be used (by far too much false positives). But I am currently testing a LPR plugin based on openalpr library (https://github.com/openalpr/openalpr) and I have good results.

manupap1 commented 9 years ago

I will send a pull request for plugin support before the end of this year (now I am focused on debian packaging). That will be my christmas gift. But beware this will include some deep modifications in makefiles (necessary to support shared libraries). The basic idea is to provide a plugin development library.

whopperg commented 9 years ago

Sounds awesome! Thanks!

manupap1 commented 9 years ago

Sorry I have not been able to focus on this subject during the past weeks. I just refreshed my fork of ZoneMinder with the plugin framework: https://github.com/manupap1/ZoneMinder (plugin_support branch) I am not sending a pull request right now because this stuff depends on https://github.com/ZoneMinder/ZoneMinder/pull/646. The LPR plugin is there: https://github.com/manupap1/libzoneminder-plugin-openalpr If you want to test, please follow instructions on the README.md file.

connortechnology commented 9 years ago

I'll get onto testing/merging #646 soon.

whopperg commented 9 years ago

@manupap1:

Nice work mate! Loved the documentation! Just cloned your fork and try to install it as i write.

Cheers!

whopperg commented 9 years ago

well - i failed. or at least the build:

Here the last output:

make[1]: Entering directory '/downloads/manuapap1/ZoneMinder' I: zoneminder_1.28.1 dh_install --fail-missing cp: cannot stat âdebian/tmp/usr/share/perl5/ZoneMinderâ: No such file or directory dh_install: cp -a debian/tmp/usr/share/perl5/ZoneMinder debian/libzoneminder-perl//usr/share/perl5/ returned exit code 1 debian/rules:80: recipe for target 'override_dh_install' failed make[1]: * [override_dh_install] Error 2 make[1]: Leaving directory '/downloads/manuapap1/ZoneMinder' debian/rules:46: recipe for target 'binary' failed make: * [binary] Error 2 dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2 debuild: fatal error at line 1376: dpkg-buildpackage -rfakeroot -D -us -uc failed

manupap1 commented 9 years ago

@whopperg This should be fixed now.

whopperg commented 9 years ago

Thanks mate! Its working - after some smaller hickups :-) Going to build the plugin now. I'll get back to you with more Infos if you want to.

Cheers!

whopperg commented 9 years ago

Got another one ;-)

make[1]: Entering directory '/downloads/manuapap1/libzoneminder-plugin-openalpr' I: libzoneminder-plugin-openalpr_1.0.0 dh_strip --dbg-package=libzoneminder-plugin-openalpr-dbg make[1]: Leaving directory '/downloads/manuapap1/libzoneminder-plugin-openalpr' dh_makeshlibs dh_shlibdeps dpkg-shlibdeps: error: no dependency information found for /usr/local/lib/libopencv_imgproc.so.2.4 (used by debian/libzoneminder-plugin-openalpr/usr/lib/zoneminder/plugins/libzm_plugin_openalpr.so) Hint: check if the library actually comes from a package. dh_shlibdeps: dpkg-shlibdeps -Tdebian/libzoneminder-plugin-openalpr.substvars debian/libzoneminder-plugin-openalpr/usr/lib/zoneminder/plugins/libzm_plugin_openalpr.so returned exit code 2 debian/rules:42: recipe for target 'binary' failed make: *\ [binary] Error 2 dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2 debuild: fatal error at line 1376: dpkg-buildpackage -rfakeroot -D -us -uc failed

manupap1 commented 9 years ago

It failed because you have a local installation of the libopencv_imgproc library which takes precedence over the package version of the library. And obviously dpkg-shlibdeps does not find a package dependency for this local library.

Run the following command should point out the problem:

ldconfig -p | grep libopencv_imgproc.so.2.4

Your options:

whopperg commented 9 years ago

Thanks manupap1 :+1: (i've really tried all i could but building packages and stuff but this isnt really my thing ;-) mostly im a Windows guy : ) sudo make install did the trick. Plugin is running! I have to wait till my wive is back home to see if it catches the plate ;-)

manupap1 commented 9 years ago

@whopperg If you have some issues about the plugin, thanks to report them on my repository.

whopperg commented 9 years ago

@manupap1: Thank you very much. I will do that.

Should i keep this request open for face recognition part?

manupap1 commented 9 years ago

I would say to keep this request opened for now.

knight-of-ni commented 9 years ago

Closing this out since it appears that @manupap1 has written a ZoneMinder plugin that does this. https://github.com/manupap1/libzoneminder-plugin-openalpr