cvExtractSURF can't handle uniform blank image data in v2.4.x r8722 (Bug #2076)
Description
This issue apparently has existed for a few months.
It seems rather improbable to occur very often, but may cause inconsistent errors if a camera blooms in sudden light changes.
Thanks again, =)
J
//bug proof: if img is a white frame: CV_RGB(255,255,255) //One can suppress the issue with some bogus pixel noise //cvCircle(img, cvPoint(0,0), 42, CV_RGB(0,0,0), 1, 8, 0); //cvCircle(img, cvPoint(0,0), 32, CV_RGB(255,255,255), 1, 8, 0); //The cvExtractSURF crash persists in v2.4.x svn build r8722 cvExtractSURF(img, 0, &frameKeypoints, &frameDescriptors, storageSurf, paramsSurf );
Error displayed:
OpenCV Error: Incorrect size of input array () in cvCreateSeq, file /home/yourmom/SDK/opencv/trunk/opencv/modules/core/src/datastructs.cpp, line 372 terminate called after throwing an instance of 'cv::Exception' what(): /home/yourmom/SDK/opencv/trunk/opencv/modules/core/src/datastructs.cpp:372: error: (-201) in function cvCreateSeq
Legacy machine build:
-- General configuration for OpenCV 2.4.9 ===================================== -- Version control: svn:8722 -- -- Platform: -- Host: Linux 2.6.32-34-generic x86_64 -- CMake: 2.8.1 -- CMake generator: Unix Makefiles -- CMake build tool: /usr/bin/make -- Configuration: RELEASE -- -- C/C++: -- Built as dynamic libs?: YES -- C++ Compiler: /usr/bin/c++ (ver 4.4.3) -- C++ flags (Release): -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -ffunction-sections -O3 -DNDEBUG -DNDEBUG -- C++ flags (Debug): -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -ffunction-sections -g -O0 -DDEBUG -D_DEBUG -ggdb3 -- C Compiler: /usr/bin/gcc -- C flags (Release): -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -ffunction-sections -O3 -DNDEBUG -DNDEBUG -- C flags (Debug): -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -ffunction-sections -g -O0 -DDEBUG -D_DEBUG -ggdb3 -- Linker flags (Release): -- Linker flags (Debug): -- Precompiled headers: YES -- -- OpenCV modules: -- To be built: core imgproc flann highgui features2d calib3d ml video objdetect contrib nonfree legacy gpu photo python stitching ts videostab -- Disabled: world -- Disabled by dependency: - -- Unavailable: androidcamera java -- -- GUI: -- QT 4.x: YES (ver 4.6.2 EDITION = OpenSource) -- QT OpenGL support: YES (/usr/lib/libQtOpenGL.so) -- OpenGL support: YES (/usr/lib64/libGLU.so /usr/lib64/libGL.so /usr/lib64/libSM.so /usr/lib64/libICE.so /usr/lib64/libX11.so /usr/lib64/libXext.so) -- -- Media I/O: -- ZLib: /usr/lib64/libz.so (ver 1.2.3.3) -- JPEG: /usr/lib64/libjpeg.so (ver 62) -- PNG: /usr/lib64/libpng.so (ver 1.2.42) -- TIFF: /usr/lib64/libtiff.so (ver 42 - 3.9.2) -- JPEG 2000: /usr/lib64/libjasper.so (ver 1.900.1) -- OpenEXR: /usr/lib64/libImath.so /usr/lib64/libIlmImf.so /usr/lib64/libIex.so /usr/lib64/libHalf.so /usr/lib64/libIlmThread.so (ver 1.6.1) -- -- Video I/O: -- DC1394 1.x: NO -- DC1394 2.x: YES (ver 2.1.2) -- FFMPEG: YES -- codec: YES (ver 54.17.101) -- format: YES (ver 54.3.100) -- util: YES (ver 51.49.100) -- swscale: YES (ver 2.1.100) -- gentoo-style: YES -- GStreamer: -- base: YES (ver 0.10.28) -- app: YES (ver 0.10.28) -- video: YES (ver 0.10.28) -- OpenNI: YES (ver 1.5.2, build 23) -- OpenNI PrimeSensor Modules: YES (/usr/lib64/libXnCore.so) -- PvAPI: NO -- UniCap: NO -- UniCap ucil: NO -- V4L/V4L2: Using libv4l (ver 0.6.4) -- Xine: YES (ver 1.1.17) -- -- Other third-party libraries: -- Use IPP: NO -- Use TBB: NO -- Use Cuda: NO -- Use Eigen: YES (ver 2.0.15) -- Use Clp: NO -- -- Python: -- Interpreter: /usr/bin/python2.6 (ver 2.6.5) -- Libraries: /usr/lib64/libpython2.6.so -- numpy: /usr/lib/python2.6/dist-packages/numpy/core/include (ver 1.3.0) -- packages path: lib/python2.6/dist-packages -- -- Documentation: -- Build Documentation: YES -- Sphinx: /usr/bin/sphinx-build (ver 1.0.1) -- PdfLaTeX compiler: /usr/bin/pdflatex -- -- Tests and samples: -- Tests: YES -- Performance tests: YES -- Examples: YES -- -- Install path: /usr/local/opencv -- -- cvconfig.h is in: /home/yourmom/SDK/opencv/trunk/opencv/release -- ----------------------------------------------------------------- -- -- Configuring done -- Generating done -- Build files have been written to: /home/yourmom/SDK/opencv/trunk/opencv/release
Associated revisions
Fixed cvExtractSURF in case of no keypoints found #2076
Merge pull request #2076 from ilya-lavrenov:tapi_dft
History
Updated by Andrey Kamaev over 12 years ago
- Category changed from features2d to legacy, contrib
Updated by Andrey Kamaev over 12 years ago
Thanks, fixed in r8811
- Status changed from Open to Done
- Target version set to 2.4.2
- Assignee changed from Maria Dimashova to Andrey Kamaev