OpenCV

From BITPlan Wiki
Jump to: navigation, search

Click here to comment see Self Driving RC Car

OpenCV is a computer vision library written in C++. Binding for Java, Python and other environments are available.

Links

Tutorial

load PDF


Issues

see e.g. https://github.com/opencv/opencv/issues/16431

OpenCV Version

OpenCV VideoWriter

see https://github.com/rc-dukes/dukes/issues/48

OpenCV: FFMPEG: tag 0x67706a6d/'mjpg' is not supported with codec id 7 and format 'mpeg / MPEG-1 Systems / MPEG program stream'

SIGILL when calling findChessBoardCorners on MacOS 10.13.6 with macports opencv

crash

reading: ./target/test-classes/cameramatrix/GOPR0032.jpg
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGILL (0x4) at pc=0x0000000141f4e8c6, pid=35515, tid=0x0000000000002503
#
# JRE version: Java(TM) SE Runtime Environment (8.0_191-b12) (build 1.8.0_191-b12)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.191-b12 mixed mode bsd-amd64 compressed oops)
# Problematic frame:
# C  [libopencv_imgproc.3.4.dylib+0x2088c6]  cv::Ptr<cv::FilterEngine> cv::makePtr<cv::FilterEngine, cv::Ptr<cv::BaseFilter>, cv::Ptr<cv::BaseRowFilter>, cv::Ptr<cv::BaseColumnFilter>, int, int, int, int>(cv::Ptr<cv::BaseFilter> const&, cv::Ptr<cv::BaseRowFilter> const&, cv::Ptr<cv::BaseColumnFilter> const&, int const&, int const&, int const&, int const&)+0x4e
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /Users/wf/Documents/workspace/dukes/rc-camera-matrix/hs_err_pid35515.log
#

log

Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [libopencv_imgproc.3.4.dylib+0x2088c6]  cv::Ptr<cv::FilterEngine> cv::makePtr<cv::FilterEngine, cv::Ptr<cv::BaseFilter>, cv::Ptr<cv::BaseRowFilter>, cv::Ptr<cv::BaseColumnFilter>, int, int, int, int>(cv::Ptr<cv::BaseFilter> const&, cv::Ptr<cv::BaseRowFilter> const&, cv::Ptr<cv::BaseColumnFilter> const&, int const&, int const&, int const&, int const&)+0x4e
C  [libopencv_imgproc.3.4.dylib+0x1b07c]  cv::cpu_baseline::createBoxFilter(int, int, cv::Size_<int>, cv::Point_<int>, bool, int)+0x151
C  [libopencv_imgproc.3.4.dylib+0x1b6e3]  cv::createBoxFilter(int, int, cv::Size_<int>, cv::Point_<int>, bool, int)+0xb0
C  [libopencv_imgproc.3.4.dylib+0x1b9b5]  cv::boxFilter(cv::_InputArray const&, cv::_OutputArray const&, int, cv::Size_<int>, cv::Point_<int>, bool, int)+0x287
C  [libopencv_imgproc.3.4.dylib+0x1e09bc]  cv::adaptiveThreshold(cv::_InputArray const&, cv::_OutputArray const&, double, int, int, int, double)+0x470
C  [libopencv_calib3d.3.4.dylib+0x7ad6]  cv::findChessboardCorners(cv::_InputArray const&, cv::Size_<int>, cv::_OutputArray const&, int)+0x1626
C  [libopencv_java343.dylib+0x7de02]  Java_org_opencv_calib3d_Calib3d_findChessboardCorners_11+0x6a
j  org.opencv.calib3d.Calib3d.findChessboardCorners_1(JDDJ)Z+0
j  org.opencv.calib3d.Calib3d.findChessboardCorners(Lorg/opencv/core/Mat;Lorg/opencv/core/Size;Lorg/opencv/core/MatOfPoint2f;)Z+18
j  nl.vaneijndhoven.dukes.camera.matrix.CameraMatrix.findCorners(Lorg/opencv/core/Mat;IILorg/opencv/core/MatOfPoint2f;)Z+14

diagnosis

therapy

ask question - bug?

Crash on tcp connection open

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00000001227bae5e, pid=58965, tid=0x0000000000018503
#
# JRE version: Java(TM) SE Runtime Environment (8.0_152-b16) (build 1.8.0_152-b16)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.152-b16 mixed mode bsd-amd64 compressed oops)
# Problematic frame:
# [tcp @ 0x7f7f41780780] Connection to tcp://picarford:8090 failed: Connection refused
C  [libopencv_videoio.3.4.dylib+0x25e5e]  AutoLock::~AutoLock()+0x4
#
# [thread 80387 also had an error]
Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /Users/wf/Documents/workspace/dukes/rc-server/hs_err_pid58965.log
OpenCV: Couldn't read video stream from file "http://picarford:8090/stream/video.mjpeg"
[ERROR:1] VIDEOIO(cvCreateFileCapture_Images(filename.c_str())): raised OpenCV exception:

OpenCV(3.4.8) /opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_graphics_opencv/opencv/work/opencv-3.4.8/modules/videoio/src/cap_images.cpp:246: error: (-5:Bad argument) CAP_IMAGES: can't find starting number (in the name of file): http://picarford:8090/stream/video.mjpeg in function 'icvExtractPattern'

RAX=0x00000001227b8200: _ZN16CvCapture_FFMPEG4openEPKc+0x360 in /opt/local/lib/libopencv_videoio.3.4.dylib at 0x0000000122795000
RBX=0x00007f7f4a255c70 is an unknown value
RCX=0x00007fff7a04609a: poll+0xa in /usr/lib/system/libsystem_kernel.dylib at 0x00007fff7a028000
RDX=0x0000000000000000 is an unknown value

What Links Here