panoramic / fisheye / 360 degree cameras and securityspy?
I've recently started using SecuritySpy for a 5MP IP camera and am planning for further expansion of my installed cameras.
i've been looking at adding some "fisheye" 360 degree cameras, specifically the Mobotix Q24, the Axis M3007-PV, and the Vivotek FE8172V. These cameras are similar in some respects, but IIUC they differ with regard to how "dewarping" of images is handled.
They are all listed as supported cameras for Security Spy, but I wonder if someone can share some additional detail on what level of support Security Spy provides. Specifically:
1) Does SecuritySpy perform the dewarping itself, or does it require the camera to dewarp the video before it can be recorded?
2a) If SecuritySpy does not perform the dewarping itself, how does this work with the Vivotek which does not have dewarping support built into the camera itself?
2b) If SecuritySpy does handle dewarping itself, is this prior to recording, or is it during playback through the Browser?
3) Can SecuritySpy export a dewarped video stream?
i've been looking at adding some "fisheye" 360 degree cameras, specifically the Mobotix Q24, the Axis M3007-PV, and the Vivotek FE8172V. These cameras are similar in some respects, but IIUC they differ with regard to how "dewarping" of images is handled.
They are all listed as supported cameras for Security Spy, but I wonder if someone can share some additional detail on what level of support Security Spy provides. Specifically:
1) Does SecuritySpy perform the dewarping itself, or does it require the camera to dewarp the video before it can be recorded?
2a) If SecuritySpy does not perform the dewarping itself, how does this work with the Vivotek which does not have dewarping support built into the camera itself?
2b) If SecuritySpy does handle dewarping itself, is this prior to recording, or is it during playback through the Browser?
3) Can SecuritySpy export a dewarped video stream?
Comments
The tradeoff, AIUI, is that the dewarped images don't cover the full field of view of the fisheye camera--so by recording only the dewarped images all the data is not being captured.
OTOH it seems every fisheye camera uses a different dewarping library, so I understand why SecuritySpy works the way it does. Is it feasible for a user (like me) to write some Applescript glue to integrate SecuritySpy to a vendor-specific dewarping library?
I think you're right that different cameras, having different lenses, will use different de-warping routines to best process the images. In addition, vendor-specific libraries seem to come with license agreements that forbid using them with other brands of IP cameras. So I would rather implement some kind of SecuritySpy-specific "universal" de-warping code, rather than use any vendor-specific libraries.
Unfortunately I don't think it would be possible to use AppleScript in the way that you describe as AppleScript can't have direct access to the video stream.
the only remaining unanswered question i have with regard to SecuritySpy and fisheye cameras is: what about those cameras like the Vivotek FE8172V which do not have built-in dewarping capabilities?
IIUC, this camera and others like the GeoVision FE420 rely on client-side dewarping e.g. in the form of an ActiveX control, manufacturer-specific SDK, or NVR-specific plug-in (Vivotek offers one for Milestone) in order to produce rectilinear projected images.
Does this mean I would have to use a different NVR or playback solution for these fisheye cameras, or is there some other way for me to create a 'plug-in' for SecuritySpy which used the relevant SDK? or is it best to just wait for SecuritySpy-specific universal dewarping support?
PS: Thanks Ben for SecuritySpy. I've deployed it in both my business and my home. Love it.
Thanks for your kind words about SecuritySpy, glad you like the software!
Would you be willing to share your OpenCL code? I've also got a Vivotek FE8172V and would very much like to be able to dewarp its output for use in home automation. Please contact me: Ryan.Melena at gmail dot com
Thanks.
Is there an update on when de-warping might be available? Or the ability to select smaller sections of the field of view and show effectively as different de-warped images? This video shows how the Dahua software does it:
Based on Ben's recommendation last year I bought the Axis M3027-PVE 5MP panoramic camera from B&H and am happy with it. It does what I believe you're calling dewarping (and has something like 10 different presets, at least a few of which will likely be useful). I have two of these cameras that are soffit-mounted outside. Here's the discussion from April 2017: https://www.bensoftware.com/forum/discussion/comment/6044#Comment_6044
Is there any recommendations in the 2023.
Is there any forward motion on an option to dewarp?
Hi @jgalanter a dewarp function in SecuritySpy most likely won't be implemented. This is because 1. only the camera knows the parameters of the distortion of its particular lens - this will be different for every camera - so coming up with some kind of universal dewarp is challenging, and 2. virtually all fisheye cameras these days offer dewarped streams (the camera itself dewarps, and sends the corrected image to SecuritySpy).