Halcon和OpenCV是两个广泛使用的机器视觉库,各有优势和适用场景。下面是对它们的简要比较:

我这里刚好有嵌入式、单片机、plc的资料需要可以私我或在评论区扣个6

Halcon:

Halcon是由MVTec Software GmbH开发的商业机器视觉库。它提供了广泛的功能和算法,适用于各种机器视觉应用。以下是Halcon的一些优点:


高度优化的性能:Halcon针对工业级机器视觉应用进行了高度优化,提供了快速且可靠的图像处理和分析能力。

完善的工具箱:Halcon提供了丰富的图像处理和分析工具,包括形状识别、模板匹配、测量、3D视觉等功能。

商业支持和文档:作为商业软件,Halcon提供了专业的技术支持和文档,可帮助开发者解决问题和快速上手。

OpenCV:

OpenCV是一个开源机器视觉库,由一系列开发者共同维护和贡献。它在计算机视觉领域广泛应用,具有以下优点:


开源和免费:OpenCV是开源库,可以免费使用,并且有一个庞大的社区支持,提供了丰富的文档和示例代码。

跨平台支持:OpenCV可在多个操作系统上运行,并提供了对各种编程语言的支持,包括C++、Python和Java等。

多样化的算法和工具:OpenCV涵盖了广泛的计算机视觉算法和工具,包括图像处理、特征提取、目标检测等,适用于多种应用场景。

综上所述,选择使用Halcon还是OpenCV取决于你的具体需求和背景。如果你在工业领域有复杂的机器视觉任务,且有预算购买商业软件并获得专业支持,那么Halcon可能是一个不错的选择。如果你是学术研究人员、初学者或者有开源偏好,并且对跨平台支持有要求,那么OpenCV可能更适合你。无论选择哪个库,它们都提供了强大的图像处理和分析功能,可以满足大多数机器视觉应用的需求。0a22e238c078aa3d9dd9560729e4a11d.jpeg


我这里刚好有嵌入式、单片机、plc的资料需要可以私我或在评论区扣个6

GitHub 加速计划 / opencv31 / opencv
77.36 K
55.71 K
下载
OpenCV: 开源计算机视觉库
最近提交(Master分支:2 个月前 )
35571be5 Use LMUL=2 in the RISC-V Vector (RVV) backend of Universal Intrinsic. #26318 The modification of this patch involves the RVV backend of Universal Intrinsic, replacing `LMUL=1` with `LMUL=2`. Now each Universal Intrinsic type actually corresponds to two RVV vector registers, and each Intrinsic function also operates two vector registers. Considering that algorithms written using Universal Intrinsic usually do not use the maximum number of registers, this can help the RVV backend utilize more register resources without modifying the algorithm implementation This patch is generally beneficial in performance. We compiled OpenCV with `Clang-19.1.1` and `GCC-14.2.0` , ran it on `CanMV-k230` and `Banana-Pi F3`. Then we have four scenarios on combinations of compilers and devices. In `opencv_perf_core`, there are 3363 cases, of which: - 901 (26.8%) cases achieved more than `5%` performance improvement in all four scenarios, and the average speedup of these test cases (compared to scalar) increased from `3.35x` to `4.35x` - 75 (2.2%) cases had more than `5%` performance loss in all four scenarios, indicating that these cases are better with `LMUL=1` instead of `LMUL=2`. This involves `Mat_Transform`, `hasNonZero`, `KMeans`, `meanStdDev`, `merge` and `norm2`. Among them, `Mat_Transform` only has performance degradation in a few cases (`8UC3`), and the actual execution time of `hasNonZero` is so short that it can be ignored. For `KMeans`, `meanStdDev`, `merge` and `norm2`, we should be able to use the HAL to optimize/restore their performance. (In fact, we have already done this for `merge` #26216 ) ### Pull Request Readiness Checklist See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request - [x] I agree to contribute to the project under Apache 2 License. - [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV - [ ] The PR is proposed to the proper branch - [ ] There is a reference to the original bug report and related work - [ ] There is accuracy test, performance test and test data in opencv_extra repository, if applicable Patch to opencv_extra has the same branch name. - [ ] The feature is well documented and sample code can be built with the project CMake 3 天前
331412df OpenVINO friendly output names from non-compiled Model 4 天前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐