opencv net.setPreferableTarget(DNN_TARGET_OPENCL)问题

opencv4.0 dnn加载yolov3模型,当使用opencl时,报错,错误信息如下,有没有大佬知道怎么回事?无法识别的命令是什么意思?
[ INFO:0] Initialize OpenCL runtime...
OpenCV(ocl4dnn): consider to specify kernel configuration cache directory
via OPENCV_OCL4DNN_CONFIG_PATH parameter.
[ INFO:0] Successfully initialized OpenCL cache directory: C:\Users\xx\AppData\Local\Temp\opencv\4.0\opencl_cache\
[ INFO:0] Preparing OpenCL cache configuration for context: NVIDIA_Corporation--GeForce_GTX_1050_Ti--419_67
OpenCL program build log: dnn/dummy
Status -11: CL_BUILD_PROGRAM_FAILURE
-cl-no-subgroup-ifp
Error in processing command line: Don't understand command line argument "-cl-no-subgroup-ifp"!

weixin_42565369
DW退了哪还有风驰闪电掣 你好,请问您解决了吗?我也遇到同样问题
大约一年之前 回复

1个回答

OpenCV(ocl4dnn): consider to specify kernel configuration cache directory
via OPENCV_OCL4DNN_CONFIG_PATH parameter.
OpenCL program build log: dnn/dummy
Status -11: CL_BUILD_PROGRAM_FAILURE
-cl-no-subgroup-ifp
Error in processing command line: Don't understand command line argument "-cl-no-subgroup-ifp"!

我遇到了这个问题,不知道你的问题解了没?

Hellow_RMB
Hellow_RMB 回复左右Shawn: 老歌,想问一下,你做的流程优化主要指什么呀?
大约 2 个月之前 回复
GT20062010
Genius_ky 有朋友解决嘛?
10 个月之前 回复
x454045816
左右Shawn 回复DW退了哪还有风驰闪电掣: 木有啊,老哥
10 个月之前 回复
x454045816
左右Shawn 回复DW退了哪还有风驰闪电掣: 这个问题最终我也没有解决,后来看到有人说只要GPU利用率上去了,就不用管这个异常了。我的GPU利用率上去了,但是速度还是很慢。最终从流程上做了优化。
12 个月之前 回复
weixin_42565369
DW退了哪还有风驰闪电掣 解决了吗老兄?
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
使用JavaCV 创建HOGDescriptor时报错:java.lang.UnsatisfiedLinkError: org.opencv.objdetect.HOGDescriptor.HOGDescriptor_7(DDDDDDDDI)J

``` HOGDescriptor hog = new HOGDescriptor(new Size(64, 128),new Size(16,16), new Size(8,8),new Size(8,8),9); ``` 以上是报错的语句 报错的完整信息如下: ``` Exception in thread "main" java.lang.UnsatisfiedLinkError: org.opencv.objdetect.HOGDescriptor.HOGDescriptor_7(DDDDDDDDI)J at org.opencv.objdetect.HOGDescriptor.HOGDescriptor_7(Native Method) at org.opencv.objdetect.HOGDescriptor.<init>(HOGDescriptor.java:185) at utilities.ImageProcessor.processSubFolder(ImageProcessor.java:59) at utilities.ImageProcessor.main(ImageProcessor.java:71) ``` 以前没做过这个,最近因为学校课程的要求要做个大作业,现在一脸懵逼,求帮助。需要其他哪里的代码麻烦再告诉我,我再贴上来

关于如何生成opencv_haartraining.exe的方法

大家好,我想问一下,关于在opencv2.4.13中,如何使用haartraining文件夹中的一系列源代码文件生成的opencv_haartraining.exe和opencv_createsamples.exe两个可执行文件的? ![图片说明](https://img-ask.csdn.net/upload/201701/31/1485844108_600955.png) 我想尝试改动源代码进而提高opencv_haartraining.exe训练的.xml文件的性能 我曾尝试过两种方法: 1、根据haartraining中的源程序和头文件的关系,逐一的添加到工程中,但到最后还是有很多报错 2、有百度知道中讲到,使用Cmake对haartraining中的CMakelist.txt文件进行编译生成工程,并用vs打开工程即可看到opencv_haartraining.exe所包含的文件 但这两种方式,中间过程都会产生错误,所以现在还没有成功。 希望csdn中在这方面有所研究的大神,可以帮忙解决下这个问题,谢谢

opencv hello.obj : error LNK2001: unresolved external symbol _cvNamedWindow

使用的是vs2012 ultimate 和opencv2.4.2,配置基本成功,配置情况贴在后面 源程序如下: #include <cv.h> #include <highgui.h> //#pragma comment(lib,"cv.lib") //#pragma comment(lib,"highgui.lib") int main() { cvNamedWindow("my window",1); return 0; } 环境配置都是正常的: 在环境变量中配置:D:\Program Files (x86)\opencv2.4.2\opencv\build\x64\vc10\bin;D:\Program Files (x86)\opencv2.4.2\opencv\build\common\tbb\intel64\vc10 在vc++包含目录中配置 库目录中配置 连接器的附加依赖项中配置如下: opencv_calib3d242.lib opencv_contrib242.lib opencv_core242.lib opencv_features2d242.lib opencv_flann242.lib opencv_gpu242.lib opencv_haartraining_engine.lib opencv_highgui242.lib opencv_imgproc242.lib opencv_legacy242.lib opencv_ml242.lib opencv_nonfree242.lib opencv_objdetect242.lib opencv_photo242.lib opencv_stitching242.lib opencv_ts242.lib opencv_video242.lib opencv_videostab242.lib 当然debug和release都进行了如此的配置,debug下多一个字母d 以前也是如此配置,基本成功,但是这次始终成功不了,总是出现问题如下: hello.obj : error LNK2001: unresolved external symbol _cvNamedWindow 网上找了很多种解决方案都不奏效: 1说连接器和库不匹配 2说没有cv.lib 和higugui.lib几个文件,所以添加了 #pragma comment(lib,"cv.lib") #pragma comment(lib,"highgui.lib") 但还是运行不成功,求大神帮忙啊!!

请问这段opencv代码为什么在debug下无法编译通过,但是release可以通过?

``` #include<opencv2\core\core.hpp> #include<opencv2\highgui\highgui.hpp> using namespace cv; void main() { Mat image=imread("E:\\images\\07.jpg"); namedWindow("img"); imshow("img", image); waitKey(0); } ``` 编译环境为opencv2.4.11+vs2013。这段最简单的测试程序无法在debug下编译通过。 ![图片说明](https://img-ask.csdn.net/upload/201509/17/1442475731_362233.png) ![图片说明](https://img-ask.csdn.net/upload/201509/17/1442475692_384048.png) 附加依赖项为 opencv_calib3d2411.lib opencv_contrib2411.lib opencv_core2411.lib opencv_features2d2411.lib opencv_flann2411.lib opencv_gpu2411.lib opencv_highgui2411.lib opencv_imgproc2411.lib opencv_legacy2411.lib opencv_ml2411d.lib opencv_objdetect2411.lib opencv_ts2411.lib opencv_video2411.lib opencv_nonfree2411.lib opencv_ocl2411.lib opencv_photo2411.lib opencv_stitching2411.lib opencv_superres2411.lib opencv_videostab2411.lib opencv_calib3d2411d.lib opencv_contrib2411d.lib opencv_core2411d.lib opencv_features2d2411d.lib opencv_flann2411d.lib opencv_gpu2411d.lib opencv_highgui2411d.lib opencv_imgproc2411d.lib opencv_legacy2411d.lib opencv_objdetect2411d.lib opencv_ts2411d.lib opencv_video2411d.lib opencv_nonfree2411d.lib opencv_ocl2411d.lib opencv_photo2411d.lib opencv_stitching2411d.lib opencv_superres2411d.lib opencv_videostab2411d.lib 报的错误是 ![图片说明](https://img-ask.csdn.net/upload/201509/17/1442475851_593908.png)

opencv for Java4.1.2中有stitcher类了,可以不用JNI实现全景图片的拼接了吗

网上Java实现全景图片拼接都是用的JavaJNI调用c++的stitch函数,在maven上下载的JavaCPP presets for OpenCV最新的包中也有stitcher类了,类比c++中stitch的用法写了一段代码: ``` import static org.bytedeco.opencv.global.opencv_imgcodecs.imread; import static org.bytedeco.opencv.global.opencv_imgcodecs.imwrite; import org.bytedeco.opencv.opencv_core.Mat; import org.bytedeco.opencv.opencv_core.MatVector; import org.bytedeco.opencv.opencv_stitching.Stitcher; public class Test { //拼接两张图片,路径为path1和path2 public static Mat splice(String path1,String path2) { Mat mat1 = imread(path1); Mat mat2 = imread(path2); System.out.println(mat2); System.out.println(mat1); MatVector vector = new MatVector(); Mat mat = new Mat(); vector.put(mat2); vector.put(mat1); Stitcher stitcher = Stitcher.create(); //c++中stitch函数的参数是vector<Mat>,Mat,前者存放要拼接的图片,后者为拼接结果 stitcher.stitch(vector, mat); System.out.println(mat); stitcher.close(); return mat; } public static void main(String[] args) { Mat mat = splice("D:\\img1.jpg", "D:\\img2.jpg"); System.out.println(mat); imwrite("D:\\img3.jpg",mat); } } ``` 可这样得到的拼接结果是空值,报错如下Exception in thread "main" java.lang.RuntimeException: OpenCV(4.1.2) C:\projects\javacpp-presets\opencv\cppbuild\windows-x86_64\opencv-4.1.2\modules\imgcodecs\src\loadsave.cpp:715: error: (-215:Assertion failed) !_img.empty() in function 'cv::imwrite' 补充新的报错:更改了一下vector的创建和put为 MatVector vector = new MatVector();vector.put(0,mat2);vector.put(1,mat1) Exception in thread "main" java.lang.RuntimeException: OpenCV(4.1.2) C:\projects\javacpp-presets\opencv\cppbuild\windows-x86_64\opencv-4.1.2\modules\imgproc\src\resize.cpp:3723: error: (-215:Assertion failed) inv_scale_x > 0 in function 'cv::resize' 网上查不到关于这方面的资料,请问有大神知道这个stitch方法怎么使用吗

opencv里面找不到opencv_createsamples.exe如何训练一个分类器

opencv里面找不到opencv_createsamples.exe如何训练一个分类器 现在想自己训练一个分类器但是没有opencv_createsamples.exe都不知道怎么办了

opencv3.4 加载tensorflow模型 net.forward()总是报错?

OpenCV Error: Assertion failed (!_aspectRatios.empty(), _minSize > 0) in cv::dnn::PriorBoxLayerImpl::PriorBoxLayerImpl, file C:\build\master_winpack-build-win64-vc14\opencv\modules\dnn\src\layers\prior_box_layer.cpp, line 207 C:\build\master_winpack-build-win64-vc14\opencv\modules\dnn\src\layers\prior_box_layer.cpp:207: error: (-215) !_aspectRatios.empty(), _minSize > 0 in function cv::dnn::PriorBoxLayerImpl::PriorBoxLayerImpl

还是OPENCV编译出错,arm版本,出现错误

错误如下: Linking CXX static library ../../lib/libopencv_haartraining_engine.a [ 82%] Built target opencv_haartraining_engine Scanning dependencies of target opencv_createsamples [ 82%] Building CXX object modules/haartraining/CMakeFiles/opencv_createsamples.dir/createsamples.obj Linking CXX executable ../../bin/opencv_createsamples ../../lib/libopencv_haartraining_engine.a(cvsamples.obj):在函数‘cvWarpPerspective(void*, void*, double (*) [2])’中: cvsamples.cpp:(.text._Z17cvWarpPerspectivePvS_PA2_d+0x674):对‘lrint’未定义的引用 cvsamples.cpp:(.text._Z17cvWarpPerspectivePvS_PA2_d+0x68c):对‘lrint’未定义的引用 cvsamples.cpp:(.text._Z17cvWarpPerspectivePvS_PA2_d+0x69c):对‘lrint’未定义的引用 cvsamples.cpp:(.text._Z17cvWarpPerspectivePvS_PA2_d+0x6bc):对‘lrint’未定义的引用 cvsamples.cpp:(.text._Z17cvWarpPerspectivePvS_PA2_d+0x734):对‘lrint’未定义的引用 ../../lib/libopencv_haartraining_engine.a(cvsamples.obj):cvsamples.cpp:(.text._Z17cvWarpPerspectivePvS_PA2_d+0x74c): more undefined references to `lrint' follow collect2: ld returned 1 exit status make[2]: *** [bin/opencv_createsamples] 错误 1 make[1]: *** [modules/haartraining/CMakeFiles/opencv_createsamples.dir/all] 错误 2 make: *** [all] 错误 2

centos7 java加载opencv.so库 opencv 创建CascadeClassifier报错

错误提示: ``` Exception in thread "main" java.lang.UnsatisfiedLinkError: org.opencv.objdetect.CascadeClassifier.CascadeClassifier_0(Ljava/lang/String;)J at org.opencv.objdetect.CascadeClassifier.CascadeClassifier_0(Native Method) at org.opencv.objdetect.CascadeClassifier.<init>(CascadeClassifier.java:37) at com.dear.faceMontage.utils.Test.main(Test.java:34) ``` 已经在代码里加载了so库位置! ``` if(os.toLowerCase().startsWith("win")){//windows openDllame = basePath+"opencv_java341.dll"; }else{//linux openDllame = basePath+"libopencv_java341.so"; } ``` java是打包成jar包执行,opencv.so文件放在jar包同级目录 ![图片说明](https://img-ask.csdn.net/upload/201909/04/1567578665_136872.png)

用cmake编译opencv3.4.0后无法找到opencv_world340.lib 的问题

按照网上给的操作做到了最后一部添加依赖项的时候要求添加”opencv_ts340.lib opencv_world340.lib “这些文件,然而惊讶的发现x86->vc11-lib里面没有这些文件,只有其它的lib。怎么办呢?编译都显示成功的呀。 以下是试运行的代码 #include<iostream> #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> using namespace cv; int main() { // 读入一张图片(游戏原画) Mat img = imread("pic.jpg"); // 创建一个名为 "游戏原画"窗口 namedWindow("游戏原画"); // 在窗口中显示游戏原画 imshow("游戏原画", img); // 等待6000 ms后窗口自动关闭 waitKey(6000); }

android studio调用opencv的Dnn.readNet出错 ReadProtoFromBinaryFile

import org.opencv.dnn.*; …… Net net = Dnn.readNet("F://text_detect//models//east//frozen_east_text_detection.pb"); 我在android studio中调用opencv的dnn功能,在读取网络的时候出错,提示: FAILED: fs.is_open(). Can't open "F://android//AndroidStudioProjects//TestSo//app//frozen_east_text_detection.pb" in function 'ReadProtoFromBinaryFile' 代码如上所示。 我查看了很多资料,说是路径问题,我可以确定我在这个路径下的pb文件是存在的;另外看到了有人用java调用dnn的readNetFromDarknet函数,我使用的时候也是会提示类似的读取失败的问题,但是这个人是使用成功的(他用了相对路径: Net net = Dnn.readNetFromDarknet("text.cfg", "text.weights");),怀疑是需要放置到固定路径下,但是我没找到放置的位置。 有人知道应该怎么放pb文件的位置吗? 我在c++下调用是可以正常调用的 net = cv::dnn::readNet("F://text_detect//models//east//frozen_east_text_detection.pb"); 不晓得c++下调用dnn的读取网络功能和安卓下有什么不同

连续装两个版本的opencv都会出现缺少opencv_core249d.dll

我的电脑win7系统,用的是vs2010,不连续装了两个版本的opencv(3.0.0和3.2.0)都会出现缺少opencv__core249d.dll无法使用,按照其他博客说明移动opencv文件夹里的dll文件至系统盘内也无法解决问题,还望各位帮忙

python3.4.0安装opencv出现问题

1.编译错误 到99% 2.结果如图![图片说明](https://img-ask.csdn.net/upload/202002/16/1581861235_906993.png) 3.错误问题#make错误,退出 make[2]: *** [modules/python3/CMakeFiles/opencv_python3.dir/build.make:56: modules/python3/CMakeFiles/opencv_python3.dir/__/src2/cv2.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:21149: modules/python3/CMakeFiles/opencv_python3.dir/all] Error 2 make: *** [Makefile:138: all] Error

cmake3.17.0 编译OpenCV3.14.10 gcc、windres.exe均报错

gcc编译显示不存在这个文件, windres.exe 就报错 ``` gcc: error: long: No such file or directory C:\mingw64\bin\windres.exe: preprocessing failed. mingw32-make[2]: *** [modules\core\CMakeFiles\opencv_core.dir\build.make:1506: modules/core/CMakeFiles/opencv_core.dir/vs_version.rc.obj] Error 1 mingw32-make[2]: *** Waiting for unfinished jobs.... mingw32-make[1]: *** [CMakeFiles\Makefile2:2237: modules/core/CMakeFiles/opencv_core.dir/all] Error 2 mingw32-make: *** [Makefile:179: all] Error 2 ``` ------------------------------------------------------------- 附上解决办法 关闭cmake里OPENCV_ENABLE_ALLOCATOR_STATS这个选型就可以了 已验证OpenCV4.3.0 和 OpenCV3.14.0

opencv3.1.0交叉编译出错

我在给mini2440移植opencv3.1.0的时候,make编译opencv过程中出错了。log如下: CMakeFiles/opencv_perf_core.dir/perf/perf_math.cpp.obj: In function `cv::Mat::~Mat()': perf_math.cpp.text._ZN2cv3MatD1Ev[cv::Mat::~Mat()]+0x1c): undefined reference to `__sync_fetch_and_add_4' CMakeFiles/opencv_perf_core.dir/perf/perf_compare.cpp.obj: In function `Size_MatType_CmpType_compare:erfTestBody()': perf_compare.cpp.text._ZN28Size_MatType_CmpType_compare12PerfTestBodyEv+0x30c): undefined reference to `__sync_fetch_and_add_4' perf_compare.cpp.text._ZN28Size_MatType_CmpType_compare12PerfTestBodyEv+0x378): undefined reference to `__sync_fetch_and_add_4' perf_compare.cpp.text._ZN28Size_MatType_CmpType_compare12PerfTestBodyEv+0x3ec): undefined reference to `__sync_fetch_and_add_4' CMakeFiles/opencv_perf_core.dir/perf/perf_compare.cpp.obj: In function `Size_MatType_CmpType_compareScalar:erfTestBody()': perf_compare.cpp.text._ZN34Size_MatType_CmpType_compareScalar12PerfTestBodyEv+0x32c): undefined reference to `__sync_fetch_and_add_4' CMakeFiles/opencv_perf_core.dir/perf/perf_compare.cpp.obj:perf_compare.cpp.text._ZN34Size_MatType_CmpType_compareScalar12PerfTestBodyEv+0x3a0): more undefined references to `__sync_fetch_and_add_4' follow collect2: ld returned 1 exit status make[2]: *** [bin/opencv_perf_core] Error 1 make[1]: *** [modules/core/CMakeFiles/opencv_perf_core.dir/all] Error 2 make: *** [all] Error 2 我用的是Ubuntu14.04,32位虚拟机。 查网上说是CMAKE_C_FLAGS要设为-march=armv4t 可是我安装提示设置了CMAKE_C_FLAGS 和 CMAKE_CXX_FLAGS的值,错误还是没有消失。 我试过了opencv3.1。0和opencv3.2.0了,都会出现这个问题。因为项目需求要用到opencv3 所以只能自己编译最新版,,泪奔 有大神遇到过这个问题吗?

Ubuntu18.04配置OPENCV3.3.1时make报错

在给Ubuntu18.04下载编译openCV3.3.1时, 参照https://blog.csdn.net/zhaoxr233/article/details/90036824 在做到make那一步时,报了以下error,在网上查询无果,不知如何解决,烦请各位大佬指点 ``` Linking CXX executable ../../bin/opencv_visualisation ../../lib/libopencv_core.a(hal_internal.cpp.o):在函数‘lapack_gemm32f(float const*, unsigned long, float const*, unsigned long, float, float const*, unsigned long, float, float*, unsigned long, int, int, int, int)’中: hal_internal.cpp:(.text._Z14lapack_gemm32fPKfmS0_mfS0_mfPfmiiii+0x3d2):对‘cblas_sgemm(CBLAS_ORDER, CBLAS_TRANSPOSE, CBLAS_TRANSPOSE, int, int, int, float, float const*, int, float const*, int, float, float*, int)’未定义的引用 ............ ../../lib/libopencv_core.a(hal_internal.cpp.o):在函数‘lapack_gemm64fc(double const*, unsigned long, double const*, unsigned long, double, double const*, unsigned long, double, double*, unsigned long, int, int, int, int)’中: hal_internal.cpp:(.text._Z15lapack_gemm64fcPKdmS0_mdS0_mdPdmiiii+0x29e):对‘cblas_zgemm(CBLAS_ORDER, CBLAS_TRANSPOSE, CBLAS_TRANSPOSE, int, int, int, void const*, void const*, int, void const*, int, void const*, void*, int)’未定义的引用 hal_internal.cpp:(.text._Z15lapack_gemm64fcPKdmS0_mdS0_mdPdmiiii+0x2f5):对‘cblas_cgemm(CBLAS_ORDER, CBLAS_TRANSPOSE, CBLAS_TRANSPOSE, int, int, int, void const*, void const*, int, void const*, int, void const*, void*, int)’未定义的引用 collect2: error: ld returned 1 exit status apps/annotation/CMakeFiles/opencv_annotation.dir/build.make:119: recipe for target 'bin/opencv_annotation' failed make[2]: *** [bin/opencv_annotation] Error 1 CMakeFiles/Makefile2:4522: recipe for target 'apps/annotation/CMakeFiles/opencv_annotation.dir/all' failed make[1]: *** [apps/annotation/CMakeFiles/opencv_annotation.dir/all] Error 2 ```

用Ubuntu16.04编译iDT算法(c++)时报错:/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o: In function `_start':(.text+0x20): undefined reference to `main'

最近在学习iDT算法,刚刚接触Ubuntu也刚刚接触c++,很多东西不是很懂,请教各位: 我在编译iDT算法的时候,需要依赖opencv和ffmpeg两个库,我安装成功并且确保这两个库能用之后,去编译iDT算法,'make'之后报错: ![图片说明](https://img-ask.csdn.net/upload/202001/10/1578648835_846854.png) 查过资料,有的人说是缺少main函数,但是我确保.cpp文件里是有main函数的。 也有帖子说是crt1.o文件的问题,也有帖子说是动态库的问题,现在很迷茫,不知道问题出在哪里,希望各位能够帮助我,万分感谢。 同时为了方便各位帮我找到问题,我上一下我的makefile文件以及Opencv和ffmpeg的安装信息。 Makefile文件 ``` # set the binaries that have to be built TARGETS := DenseTrack Video # set the build configuration set BUILD := release #BUILD := debug # set bin and build dirs BUILDDIR := .build_$(BUILD) BINDIR := $(BUILD) # libraries LDLIBS = $(addprefix -l, $(LIBS) $(LIBS_$(notdir $*))) LIBS := \ opencv_core opencv_highgui opencv_video opencv_imgproc \ avformat avdevice avutil avcodec swscale # set some flags and compiler/linker specific commands CXXFLAGS = -pipe -D __STDC_CONSTANT_MACROS -D STD=std -Wall $(CXXFLAGS_$(BUILD)) -I. -I/opt/include CXXFLAGS_debug := -ggdb CXXFLAGS_release := -O3 -DNDEBUG -ggdb LDFLAGS = -L/opt/lib -pipe -Wall $(LDFLAGS_$(BUILD)) LDFLAGS_debug := -ggdb LDFLAGS_release := -O3 -ggdb include make/generic.mk ``` 下面是opencv和ffmpeg的安装信息: ffmpeg: ![图片说明](https://img-ask.csdn.net/upload/202001/10/1578649174_591798.png) opencv: ![图片说明](https://img-ask.csdn.net/upload/202001/10/1578649330_643110.png) 恳请各位帮忙!!(小弟没有金币,没办法给悬赏,还请各位见谅!)

error "OpenCV 4.x+ requires enabled C++11 support"

编程环境:VS2019+opencv4.10 编译出现错误提示:error "OpenCV 4.x+ requires enabled C++11 support" 求解,谢谢。

opencv+java项目main方法能够成功运行但是监听文件夹服务调用opencv方法却无法加载CascadeClassifier的问题

## 在类的最前面添加了引入opencv库的代码 ``` System.loadLibrary(Core.NATIVE_LIBRARY_NAME); ``` ## detect方法 ``` public static void detect(String imagePath,String savePath,int length){ System.out.println("libraryName:"+Core.NATIVE_LIBRARY_NAME); // 从配置文件lbpcascade_frontalface.xml中创建一个人脸识别器,该文件位于opencv安装目录中 CascadeClassifier faceDetector = new CascadeClassifier("C:\\opencv\\sources\\data\\haarcascades\\haarcascade_frontalface_alt2.xml"); Mat image = Imgcodecs.imread(imagePath); // 在图片中检测人脸 MatOfRect faceDetections = new MatOfRect(); faceDetector.detectMultiScale(image, faceDetections); Rect[] rects = faceDetections.toArray(); for(int i = 0 ; i < rects.length ; i++){ Rect rect = rects[i]; Mat sub = image.submat(rect);//Mat sub = new Mat(image,rect); Mat mat = new Mat(); Size size = new Size(300, 300); Imgproc.resize(sub, mat, size);//将人脸进行截图并保存  //截图 File tempFile =new File( imagePath.trim()); String fileName = tempFile.getName(); System.out.println("filename:"+fileName); Imgcodecs.imwrite(savePath+"//"+fileName+length+".jpg", mat); ++length; } } ``` ## main方法中调用detect方法运行ok ``` ``` public static void main(String[] args) { ArrayList<File> file = null; //源文件 try { file = FileUtil.getFiles("C:\\image"); for(File files:file){ ArrayList<File> filess = FileUtil.getFiles("C:\\imageTemp") ;//保存路径 detect(files.getPath(), "C:\\imageTemp", filess.size()); } } catch (Exception e) { e.printStackTrace(); } } ``` ## 监听文件夹服务调用报错 ```System.out.println("libraryName:"+Core.NATIVE_LIBRARY_NAME); ArrayList<File> filess = FileUtil.getFiles("C:\\imageTemp") ;//保存路径 detect(path, "C:\\imageTemp", filess.size()); ArrayList<File> files = FileUtil.getFiles("C:\\imageTemp"); ArrayList<String> tempFaceList=new ArrayList<>(); ``` ## 报错内容: ``` Exception in thread "Thread-38" java.lang.UnsatisfiedLinkError: org.opencv.objdetect.CascadeClassifier.CascadeClassifier_0(Ljava/lang/String;)J at org.opencv.objdetect.CascadeClassifier.CascadeClassifier_0(Native Method) at org.opencv.objdetect.CascadeClassifier.<init>(CascadeClassifier.java:39) at com.kefo.receive.facerecognize.adaptor.FileListener.detect(FileListener.java:54) at com.kefo.receive.facerecognize.adaptor.FileListener.onFileCreate(FileListener.java:120) at org.apache.commons.io.monitor.FileAlterationObserver.doCreate(FileAlterationObserver.java:389) at org.apache.commons.io.monitor.FileAlterationObserver.checkAndNotify(FileAlterationObserver.java:329) at org.apache.commons.io.monitor.FileAlterationObserver.checkAndNotify(FileAlterationObserver.java:303) at org.apache.commons.io.monitor.FileAlterationMonitor.run(FileAlterationMonitor.java:183) at java.lang.Thread.run(Thread.java:748) ``` ## 控制台一直都可以输出libraryName:opencv_java349,library中已经导入opencv的jar包,dll文件调用也没问题,但是在文件监听的方法里调用opencv的检测人脸服务不通过,有大神能帮忙解答一下吗?

C/C++学习指南全套教程

C/C++学习的全套教程,从基本语法,基本原理,到界面开发、网络开发、Linux开发、安全算法,应用尽用。由毕业于清华大学的业内人士执课,为C/C++编程爱好者的教程。

定量遥感中文版 梁顺林著 范闻捷译

这是梁顺林的定量遥感的中文版,由范闻捷等翻译的,是电子版PDF,解决了大家看英文费时费事的问题,希望大家下载看看,一定会有帮助的

YOLOv3目标检测实战:训练自己的数据集

YOLOv3是一种基于深度学习的端到端实时目标检测方法,以速度快见长。本课程将手把手地教大家使用labelImg标注和使用YOLOv3训练自己的数据集。课程分为三个小项目:足球目标检测(单目标检测)、梅西目标检测(单目标检测)、足球和梅西同时目标检测(两目标检测)。 本课程的YOLOv3使用Darknet,在Ubuntu系统上做项目演示。包括:安装Darknet、给自己的数据集打标签、整理自己的数据集、修改配置文件、训练自己的数据集、测试训练出的网络模型、性能统计(mAP计算和画出PR曲线)和先验框聚类。 Darknet是使用C语言实现的轻型开源深度学习框架,依赖少,可移植性好,值得深入探究。 除本课程《YOLOv3目标检测实战:训练自己的数据集》外,本人推出了有关YOLOv3目标检测的系列课程,请持续关注该系列的其它课程视频,包括: 《YOLOv3目标检测实战:交通标志识别》 《YOLOv3目标检测:原理与源码解析》 《YOLOv3目标检测:网络模型改进方法》 敬请关注并选择学习!

sql语句 异常 Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your

在我们开发的工程中,有时候会报 [Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ------ 这种异常 不用多想,肯定是我们的sql语句出现问题,下面...

浪潮集团 往年的软件类 笔试题 比较详细的哦

浪潮集团 往年的软件类 笔试题 比较详细的哦

2019 AI开发者大会

2019 AI开发者大会(AI ProCon 2019)是由中国IT社区CSDN主办的AI技术与产业年度盛会。多年经验淬炼,如今蓄势待发:2019年9月6-7日,大会将有近百位中美顶尖AI专家、知名企业代表以及千余名AI开发者齐聚北京,进行技术解读和产业论证。我们不空谈口号,只谈技术,诚挚邀请AI业内人士一起共铸人工智能新篇章!

I2c串口通信实现加速度传感器和FPGA的交流

此代码能实现加速度传感器与FPGA之间的交流,从而测出运动物体的加速度。

Python可以这样学(第一季:Python内功修炼)

董付国系列教材《Python程序设计基础》、《Python程序设计(第2版)》、《Python可以这样学》配套视频,讲解Python 3.5.x和3.6.x语法、内置对象用法、选择与循环以及函数设计与使用、lambda表达式用法、字符串与正则表达式应用、面向对象编程、文本文件与二进制文件操作、目录操作与系统运维、异常处理结构。

微信公众平台开发入门

本套课程的设计完全是为初学者量身打造,课程内容由浅入深,课程讲解通俗易懂,代码实现简洁清晰。通过本课程的学习,学员能够入门微信公众平台开发,能够胜任企业级的订阅号、服务号、企业号的应用开发工作。 通过本课程的学习,学员能够对微信公众平台有一个清晰的、系统性的认识。例如,公众号是什么,它有什么特点,它能做什么,怎么开发公众号。 其次,通过本课程的学习,学员能够掌握微信公众平台开发的方法、技术和应用实现。例如,开发者文档怎么看,开发环境怎么搭建,基本的消息交互如何实现,常用的方法技巧有哪些,真实应用怎么开发。

机器学习初学者必会的案例精讲

通过六个实际的编码项目,带领同学入门人工智能。这些项目涉及机器学习(回归,分类,聚类),深度学习(神经网络),底层数学算法,Weka数据挖掘,利用Git开源项目实战等。

eclipseme 1.7.9

eclipse 出了新的eclipseme插件,官方有下载,但特慢,我都下了大半天(可能自己网速差)。有急需要的朋友可以下哦。。。

Spring Boot -01- 快速入门篇(图文教程)

Spring Boot -01- 快速入门篇 今天开始不断整理 Spring Boot 2.0 版本学习笔记,大家可以在博客看到我的笔记,然后大家想看视频课程也可以到【慕课网】手机 app,去找【Spring Boot 2.0 深度实践】的课程,令人开心的是,课程完全免费! 什么是 Spring Boot? Spring Boot 是由 Pivotal 团队提供的全新框架。Spring Boot...

HoloLens2开发入门教程

本课程为HoloLens2开发入门教程,讲解部署开发环境,安装VS2019,Unity版本,Windows SDK,创建Unity项目,讲解如何使用MRTK,编辑器模拟手势交互,打包VS工程并编译部署应用到HoloLens上等。

最简单的倍频verilog程序(Quartus II)

一个工程文件 几段简单的代码 一个输入一个输出(50Mhz倍频到100Mhz)

计算机组成原理实验教程

西北工业大学计算机组成原理实验课唐都仪器实验帮助,同实验指导书。分为运算器,存储器,控制器,模型计算机,输入输出系统5个章节

4小时玩转微信小程序——基础入门与微信支付实战

这是一个门针对零基础学员学习微信小程序开发的视频教学课程。课程采用腾讯官方文档作为教程的唯一技术资料来源。杜绝网络上质量良莠不齐的资料给学员学习带来的障碍。 视频课程按照开发工具的下载、安装、使用、程序结构、视图层、逻辑层、微信小程序等几个部分组织课程,详细讲解整个小程序的开发过程

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

基于RSA通信密钥分发的加密通信

基于RSA通信密钥分发的加密通信,采用pycrypto中的RSA、AES模块实现

不同变质程度煤尘爆炸残留气体特征研究

为分析不同变质程度煤尘爆炸残留气体成分的特征规律,利用水平管道煤尘爆炸实验装置进行了贫瘦煤、肥煤、气煤、长焰煤4种不同变质程度的煤尘爆炸实验,研究了不同变质程度煤尘爆炸后气体残留物含量的差异,并对气体

设计模式(JAVA语言实现)--20种设计模式附带源码

课程亮点: 课程培训详细的笔记以及实例代码,让学员开始掌握设计模式知识点 课程内容: 工厂模式、桥接模式、组合模式、装饰器模式、外观模式、享元模式、原型模型、代理模式、单例模式、适配器模式 策略模式、模板方法模式、观察者模式、迭代器模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式 课程特色: 笔记设计模式,用笔记串连所有知识点,让学员从一点一滴积累,学习过程无压力 笔记标题采用关键字标识法,帮助学员更加容易记住知识点 笔记以超链接形式让知识点关联起来,形式知识体系 采用先概念后实例再应用方式,知识点深入浅出 提供授课内容笔记作为课后复习以及工作备查工具 部分图表(电脑PC端查看):

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

软件测试2小时入门

本课程内容系统、全面、简洁、通俗易懂,通过2个多小时的介绍,让大家对软件测试有个系统的理解和认识,具备基本的软件测试理论基础。 主要内容分为5个部分: 1 软件测试概述,了解测试是什么、测试的对象、原则、流程、方法、模型;&nbsp; 2.常用的黑盒测试用例设计方法及示例演示;&nbsp; 3 常用白盒测试用例设计方法及示例演示;&nbsp; 4.自动化测试优缺点、使用范围及示例‘;&nbsp; 5.测试经验谈。

几率大的Redis面试题(含答案)

本文的面试题如下: Redis 持久化机制 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题 热点数据和冷数据是什么 Memcache与Redis的区别都有哪些? 单线程的redis为什么这么快 redis的数据类型,以及每种数据类型的使用场景,Redis 内部结构 redis的过期策略以及内存淘汰机制【~】 Redis 为什么是单线程的,优点 如何解决redis的并发竞争key问题 Red...

手把手实现Java图书管理系统(附源码)

【超实用课程内容】 本课程演示的是一套基于Java的SSM框架实现的图书管理系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的java人群。详细介绍了图书管理系统的实现,包括:环境搭建、系统业务、技术实现、项目运行、功能演示、系统扩展等,以通俗易懂的方式,手把手的带你从零开始运行本套图书管理系统,该项目附带全部源码可作为毕设使用。 【课程如何观看?】 PC端:https://edu.csdn.net/course/detail/27513 移动端:CSDN 学院APP(注意不是CSDN APP哦) 本课程为录播课,课程2年有效观看时长,大家可以抓紧时间学习后一起讨论哦~ 【学员专享增值服务】 源码开放 课件、课程案例代码完全开放给你,你可以根据所学知识,自行修改、优化

jsp+servlet入门项目实例

jsp+servlet实现班级信息管理项目

winfrom中嵌套html,跟html的交互

winfrom中嵌套html,跟html的交互,源码就在里面一看就懂,很简单

Java面试题大全(2020版)

发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理出来了这套Java面试题大全,希望对大家有帮助哈~ 本套Java面试题大全,全的不能再全,哈哈~ 一、Java 基础 1. JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境。 JRE:Java Runtime Environ...

python实现数字水印添加与提取及鲁棒性测试(GUI,基于DCT,含测试图片)

由python写的GUI,可以实现数字水印的添加与提取,提取是根据添加系数的相关性,实现了盲提取。含有两种攻击测试方法(高斯低通滤波、高斯白噪声)。基于python2.7,watermark.py为主

Xshell6完美破解版,亲测可用

Xshell6破解版,亲测可用,分享给大家。直接解压即可使用

你连存活到JDK8中著名的Bug都不知道,我怎么敢给你加薪

CopyOnWriteArrayList.java和ArrayList.java,这2个类的构造函数,注释中有一句话 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 public ArrayList(Collection&lt;? ...

相关热词 c#中如何设置提交按钮 c#帮助怎么用 c# 读取合并单元格的值 c#带阻程序 c# 替换span内容 c# rpc c#控制台点阵字输出 c#do while循环 c#调用dll多线程 c#找出两个集合不同的
立即提问