当前位置: 首页 > news >正文

c2c代表性企业网站上海网站建设公司电话

c2c代表性企业网站,上海网站建设公司电话,在线推广是网站推广,做网站图片OpenCV 概述 ​ OpenCV#xff08;Open Source Computer Vision Library#xff09;是一个开源计算机视觉库#xff0c;它提供了丰富的工具和算法#xff0c;用于处理图像和视频数据。该库由一系列高效的计算机视觉算法组成#xff0c;涵盖了许多领域#xff0c;包括目…OpenCV 概述 ​ OpenCVOpen Source Computer Vision Library是一个开源计算机视觉库它提供了丰富的工具和算法用于处理图像和视频数据。该库由一系列高效的计算机视觉算法组成涵盖了许多领域包括目标识别、图像处理、机器学习、三维重建等。 以下是OpenCV的一些关键特点和功能 跨平台性 OpenCV是一个跨平台的计算机视觉库支持Windows、Linux、macOS、iOS等多个操作系统。图像处理 OpenCV提供了丰富的图像处理功能包括图像滤波、边缘检测、形态学操作、颜色空间转换等。特征检测与描述符 OpenCV包括多种特征检测和描述符算法如SIFT、SURF、ORB等用于在图像中寻找关键点并生成描述符。目标检测 OpenCV支持多种目标检测算法其中包括Haar级联分类器、HOGHistogram of Oriented Gradients等。图像分割 OpenCV包括图像分割算法用于将图像分成不同的区域或对象。计算机视觉 OpenCV涉及计算机视觉的多个领域如立体视觉、相机标定、运动估计等。机器学习 OpenCV集成了一些机器学习算法包括支持向量机、k近邻、决策树等。深度学习 OpenCV对深度学习模型的支持不断增强包括对常见深度学习框架如TensorFlow、PyTorch模型的集成。多媒体处理 OpenCV支持对视频流和音频数据的处理包括捕捉、录制、播放等。开源和社区 OpenCV是一个开源项目拥有庞大的用户社区。这意味着你可以从社区获取支持分享代码和经验。 使用OpenCV可以在计算机视觉和图像处理项目中加速开发过程。无论是学术研究还是商业应用OpenCV都提供了丰富的工具和资源帮助开发者处理图像和视频数据。 其他学习方式 官网文档地址https://docs.opencv.org/4.6.0/df/d65/tutorial_table_of_content_introduction.html 教程参考https://www.w3cschool.cn/opencv/ 教程参考https://www.yiibai.com/opencv/opencv_adding_text.html 下载与安装 1、你可以从OpenCV的GitHub仓库下载Haar级联分类器的XML文件该文件用于人脸检测。以下是官方的GitHub仓库地址 https://github.com/opencv/opencv 在该仓库中Haar级联分类器的XML文件通常位于 data/haarcascades 目录下。具体来说用于人脸检测的文件是 haarcascade_frontalface_default.xml。 你可以通过直接访问GitHub页面下载该文件或者使用Git工具将整个仓库克隆到本地。以下是通过Git克隆仓库的命令 git clone https://github.com/opencv/opencv.git然后你可以在 opencv/data/haarcascades 目录下找到 haarcascade_frontalface_default.xml 文件。 请注意OpenCV的GitHub仓库可能会有更新因此你可能需要查看最新的版本。 2、下载地址https://opencv.org/releases/ 下载到本地后双击进行安装即可 目录说明 1、安装目录如下 build 基于window构建 sources开源提供源码 2、这里是Java开发关注java目录即可 x64与x86代表给不同的系统使用 opencv-452.jar给java操作openvc的程序包 3、由于是64位系统所以关注x64目录 DLL(Dynamic Link Library)文件为动态链接库文件又称“应用程序拓展”是软件文件类型。DLL文件放置于系统中。当执行某一个程序时相应的DLL文件就会被调用 实现操作集成依赖 方式一 ​ 这里使用IDEA进行开发导入opencv-460.jar库使用快捷键 CtrlShiftAltS打开选择库项导入Java库 方式二 ​ 创建一个maven项目springboot也行并引入依赖在pom.xml文件中添加 !--添加 OpenCV 依赖-- dependencygroupIdorg.openpnp/groupIdartifactIdopencv/artifactIdversion4.5.1-1/version !-- 替换为你所需的 OpenCV 版本 -- /dependencyJava代码示例 方式一 ​ 以下是一个简单的Java代码示例演示如何使用OpenCV进行人脸识别。这个示例使用了OpenCV的Haar级联分类器来检测图像中的人脸。确保你已经将OpenCV的JAR文件添加到你的Java项目中。 import nu.pattern.OpenCV; import org.opencv.core.*; import org.opencv.highgui.HighGui; import org.opencv.imgcodecs.Imgcodecs; import org.opencv.imgproc.Imgproc; import org.opencv.objdetect.CascadeClassifier;/*** 描述Java中利用OpenCV进行人脸识别** author 为一道彩虹*/ public class FaceRecognition {public static void main(String[] args){// 加载 OpenCV 库OpenCV.loadShared();// 读取图像String imagePath D://Test/1553247564696949.jpg;Mat image Imgcodecs.imread(imagePath);// 加载人脸分类器String xmlFile D://haarcascade_frontalface_alt.xml;CascadeClassifier faceDetector new CascadeClassifier(xmlFile);// 人脸检测MatOfRect faceDetections new MatOfRect();faceDetector.detectMultiScale(image, faceDetections);// 绘制人脸框for (Rect rect : faceDetections.toArray()){Imgproc.rectangle(image, new Point(rect.x, rect.y), new Point(rect.x rect.width, rect.y rect.height), new Scalar(0, 255, 0));}// 显示结果HighGui.imshow(Detected Face, image);HighGui.waitKey();// 释放资源image.release();} }确保替换 imagePath 和 xmlFile 为你实际的图像文件路径和Haar级联分类器的XML文件路径。 原图 利用 OpenCV进行人脸检测的结果 方式二 ​ 除了上述方式还可以将opencv-452.jar安装到本地仓库或私有仓库然后在pom.xml中引入依赖。 在pom.xml文件中通过坐标的形式引入 !-- 加载lib目录下的opencv包 -- dependencygroupIdorg.opencv/groupIdartifactIdopencv/artifactIdversion4.5.2/versionscopesystem/scopesystemPath${basedir}/lib/opencv-460.jar/systemPath /dependency验证 public class MyTest {// 调用OpenCV库文件static {System.loadLibrary(Core.NATIVE_LIBRARY_NAME);}public static void main(String args[]){// 创建一个3X3的对角矩阵Mat a Mat.eye(3, 3, CvType.CV_8UC1);System.out.println(a.dump());} }执行上述代码不出意外将出现如下异常 Exception in thread main java.lang.UnsatisfiedLinkError: no opencv_java460 in java.library.pathat java.lang.ClassLoader.loadLibrary(ClassLoader.java:1860)at java.lang.Runtime.loadLibrary0(Runtime.java:871)at java.lang.System.loadLibrary(System.java:1122)解决方案有2种 1.将D:\Java\opencv\build\java\x64\opencv_java452.dll文件拷贝至下面2个目录任选其一即可。 2.通过指定虚拟机参数解决 try {String openCVDllName D:\\Java\\opencv\\build\\java\\x64\\opencv_java452.dll;// 本文使用 openCV4.5.2System.load(openCVDllName); } catch (SecurityException e) {System.out.println(e.toString());System.exit(-1); } catch (UnsatisfiedLinkError e) {System.out.println(e.toString());System.exit(-1); }​ 以下是一个简单的Java代码示例演示如何使用OpenCV进行人脸识别。这个示例使用了OpenCV的Haar级联分类器来检测图像中的人脸。确保你已经将OpenCV的JAR文件添加到你的Java项目中。 import org.opencv.core.*; import org.opencv.imgcodecs.Imgcodecs; import org.opencv.imgproc.Imgproc; import org.opencv.objdetect.CascadeClassifier;/*** 描述描述Java中利用OpenCV进行人脸识别** author 为一道彩虹*/ public class DetectFaceDemo {public static void detectFace(String imagePath, String outFile) throws Exception{System.out.println(开始人脸检测...);// 加载人脸分类器String xmlFile D://haarcascade_frontalface_alt.xml;CascadeClassifier faceDetector new CascadeClassifier(xmlFile);Mat image Imgcodecs.imread(imagePath);// 在图片中检测人脸MatOfRect faceDetections new MatOfRect();faceDetector.detectMultiScale(image, faceDetections);System.out.println(String.format(检测到 %s个人脸, faceDetections.toArray().length));// 绘制人脸框Rect[] rects faceDetections.toArray();if (rects ! null rects.length 1){for (Rect rect : rects){// 在每一个识别出来的人脸周围画出一个方框Imgproc.rectangle(image, new Point(rect.x, rect.y), new Point(rect.x rect.width, rect.y rect.height), new Scalar(0, 255, 0), 3);}}// 存储Imgcodecs.imwrite(outFile, image);System.out.println(String.format(人脸检测结果人脸检测图片文件为%s, outFile));}public static void main(String[] args) throws Exception{try{String openCVDllName D:\\Java\\opencv\\build\\java\\x64\\opencv_java452.dll;// 本文使用 openCV4.5.2System.load(openCVDllName);}catch (SecurityException e){System.out.println(e.toString());System.exit(-1);}catch (UnsatisfiedLinkError e){System.out.println(e.toString());System.exit(-1);}// 人脸测试String imagePath D:\\Test\\1553247564696949.jpg;detectFace(imagePath, D:\\face2.png);} }利用 OpenCV进行人脸检测的结果 总结 在Java中使用OpenCV进行人脸识别通常涉及以下步骤 安装 OpenCV 首先确保你已经在你的Java项目中安装了OpenCV库。你可以通过Maven或手动下载并添加OpenCV的JAR文件到你的项目中。加载 OpenCV 库 在你的Java代码中你需要加载OpenCV库。这可以通过以下方式之一完成 System.loadLibrary(Core.NATIVE_LIBRARY_NAME);或者如果你使用的是OpenCV的Java wrapper你可以使用 nu.pattern.OpenCV.loadShared();读取图像 使用OpenCV的 Mat 类来加载图像。这是OpenCV中表示图像的数据结构。 Mat image Imgcodecs.imread(path/to/your/image.jpg);加载人脸分类器 为了进行人脸检测你需要使用Haar级联分类器。OpenCV提供了训练好的人脸检测器你可以从OpenCV官方网站下载。 String xmlFile path/to/haarcascade_frontalface_default.xml; CascadeClassifier faceDetector new CascadeClassifier(xmlFile);人脸检测 使用加载的分类器对图像进行人脸检测。 MatOfRect faceDetections new MatOfRect(); faceDetector.detectMultiScale(image, faceDetections);绘制人脸框 遍历检测到的人脸并在图像上绘制矩形框。 for (Rect rect : faceDetections.toArray()) {Imgproc.rectangle(image, new Point(rect.x, rect.y), new Point(rect.x rect.width, rect.y rect.height), new Scalar(0, 255, 0)); }显示结果 可以使用OpenCV的窗口显示图像。 HighGui.imshow(Detected Face, image); HighGui.waitKey();释放资源 当你完成所有操作后确保释放OpenCV对象。 image.release();请注意以上代码只是一个简单的示例。在实际应用中你可能需要处理图像的各种情况例如图像预处理、性能优化等。此外你还可以使用深度学习模型进行人脸识别OpenCV也提供了对深度学习模型的支持。 先赞后看养成习惯^ _ ^ ❤️ ❤️ ❤️ 码字不易大家的支持就是我的坚持下去的动力。点赞后不要忘了关注我哦
http://www.zqtcl.cn/news/942182/

相关文章:

  • 工业设计招聘信息网站常用的seo网站优化排名
  • 温岭市建设规划局网站网站规划与建设ppt
  • 龙岩网站建设较好的公司做网站销售的换工作
  • 潞城建设局网站建设网站服务器自营方式的特点
  • 西安网站seo公司东莞市专注网站建设怎么样
  • dede游戏网站模板如何做盆栽蔬菜网站
  • 江都建设网站网站开发技术介绍
  • 网站介绍视频怎么做网站建设优化服务
  • 可以左右滑动的网站有口碑的盐城网站建设
  • 360报危险网站注册界面设计
  • 不用淘宝客api如何做网站北京移动官网网站建设
  • 手表哪个网站做的好河北网站备案流程
  • 凡科做的网站推效果网站做seo第一步
  • 建设在线观看视频网站免费企业网站建设免费
  • 网站开发需要后台吗哪家建站公司好
  • 个人建设网站论文网站视频怎么做的
  • 不同类型的购物网站汉川网站建设
  • 网站开发需求文档范文广州公司网站托管
  • 网站制作公司官网首页撸撸撸做最好的导航网站
  • 网站建设毕业设计综述centos 安装wordpress lnmp
  • 济宁专业做网站网站建设中 html
  • 中国排名高的购物网站最新发布的手机2022
  • 备案的网站名与公司名称出国用哪个地图app好
  • 网站建设工作室图片文章资讯类网站
  • 深圳自助建站系统网站题目有哪些
  • 郑州做网站kuihuakeji软文发布的平台与板块
  • 一那个网站可以做一建题安全文化企业示范企业评价标准
  • 网站没有关键词收录phpstudy配置网站
  • 返利网站怎么做的做网站推广见客户的话术
  • 两个人看的视频在线观看成都网站seo厂家