【AI白身境】搞计算机视觉必备的OpenCV入门基础

【优快云传疯了】史上最强Opencv神技——带你体会AI魅力,揭秘人脸检测识别与猫脸检测技术哦~ 本文主要介绍了OpenCV在人脸检测和猫脸检测方面的应用,并且给出了具体的Python代码。那么,能检测人脸和猫脸,我们又能做些什么呢?其实,我们如果继续探究下去,可以做不少的事情,比如结合深度学习的模型,比如CNN等,可以实现人脸识别啊,物体检测,自动给图像打标签等,欢迎大家交流~安啦!文章就写到这里,你们的支持是我最大的动力,记得三连哦!关注小编获取更多精彩内容!记得点击传送门哈👇👇👇👇👇👇记得三连哦!如需打包好的完整源码+素材免费分享滴!!!传送门。... 阅读详情

文章首发于微信公众号《有三AI》

【AI白身境】搞计算机视觉必备的OpenCV入门基础

今天是新专栏《AI白身境》的第五篇。

曾经看过一个视频,树莓派自平衡机器人自动追着小球跑。不经让我脑子蹦出一个有趣的想法,可以做一个识别猫的机器人,让机器人跟着猫跑,有这样一个小东西陪伴喵星人一定很有意思。

不过,首先你要有一只猫,其次,这个机器人不仅要有一双会视觉处理的眼睛,还一定要有一个坚强的外壳,不然会被喵星人给拆了。

那机器人是如何完成处理图像和视频的各项任务呢?开源的计算机视觉包——OpenCV 会是你的最佳选择,今天给小白们做一个最简单的入门介绍。

作者 |  臧小满 言有三 

编辑 |  臧小满 言有三 

今天很开心与大家分享一篇关于OpenCV的文章,重点阐述以下几个问题: 

1.如何部署OpenCV。

 2.OpenCV有哪些模块,可以做什么。 

3.OpenCV的基本数据结构的熟悉与使用。

希望看过文章后,你也可以开始玩转OpenCV之路。

 

01 什么OpenCV?

它是一款由Intel公司俄罗斯团队发起并参与和维护的一个计算机视觉处理开源软件库。

作为一款优秀的计算机视觉库,在诸多方面都有着卓越的表现:

1.编程语言

多数模块基于C++实现,少部分基于C语言实现,同时提供了Python、Ruby、MATLAB等语言的接口。

2.跨平台   

可自由地运行在Linux、Windows和Mac OS等桌面平台,Android、 IOS、BlackBerray等移动平台。

3.活跃的开发团队

目前已更新至OpenCV4.0

4.丰富的API

完善的传统计算机视觉算法,涵盖主流传统机器学习算法,同时添加了对深度学习的支持。

OpenCV可以完成几乎所有的图像处理任务,下面是一个简要list。

  • 视频分析(Video analysis)

  • 3D重建(3D reconstruction)

  • 特征提取(Feature extraction)

  • 目标检测(Object detection)

  • 机器学习(Machine learning)

  • 计算摄影(Computational photography)

  • 形状分析(Shape analysis)

  • 光流算法(Optical flow algorithms)

  • 人脸和目标识别(Face and object recognition)

  • 表面匹配(Surface matching)

  • 文本检测和识别(Text detection and recognition)

  •  

02 如何部署OpenCV?

一般来说我们会使用OpenCV的C++和Python版本,所以下面分别对其安装进行介绍,以ubuntu系统为例。

2.1 Ubuntu安装C++ OpenCV

安裝OpenCV所需的库

sudo apt-get install build-essential

sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev 

libswscale-dev3 sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev 

下载最新opencv源码

unzip opencv-3.2.0.zip

cd ~/opencv-3.2.0 

编译OpenCV

cd ~/opencv-3.2.0

mkdir release

cd release

cmake -D CMAKE_BUILD_TYPE=RELEASE -D 

CMAKE_INSTALL_PREFIX=/usr/local ..

make

sudo make install

一般来说,编译安装绝对不可能一次顺利完成,以下是几个常见的问题。

1,编译过程中ippcv下载失败, 解决问题的办法就是手动下载。

2,LAPACK包include报错, 解决问题的办法就是在cmake之后马上修改对应include文件的路径  如果make失败后再修改则无效。

3,某些模块找不到, 通常是因为少了编译安装contrib模块。

2.2  Ubuntu安装Python-OpenCV

安装opencv

pip3 install opencv-python

进入python,导入cv2

import cv2

 

03 OpenCV模块简介

OpenCV提供了许多内置的用于图像处理和计算机视觉相关操作的基础数据结构,它们都包含在core模块中,并且这些数据结构都已经针对速度和内存做了优化,下面以4.0版本为例进行介绍,参考https://docs.opencv.org/master/d9/df8/tutorial_root.html。

Opencv目录下”modules目录”列出了OpenCV包含的各个模块,其中core、highgui、imgproc是最基础的模块。

 

  • core模块实现了最核心的数据结构及其基本运算,如绘图函数、数组操作相关函数,与OpenGL的互操作等。

  • highgui模块实现了视频与图像的读取、显示、存储等接口。

  • imgproc模块实现了图像处理的基础方法,包括图像滤波、图像的几何变换、平滑、阈值分割、形态学处理、边缘检测、目标检测、运动分析和对象跟踪等。

对于图像处理其他更高层次的方向及应用,OpenCV也有相关的模块实现

  • features2d模块用于提取图像特征以及特征匹配,nonfree模块实现了一些专利算法,如sift特征。

  • objdetect模块实现了一些目标检测的功能,经典的基于Haar、LBP特征的人脸检测,基于HOG的行人、汽车等目标检测,分类器使用Cascade Classification(级联分类)和Latent SVM等。

  • stitching模块实现了图像拼接功能。

  • FLANN模块(Fast Library for Approximate Nearest Neighbors),包含快速近似最近邻搜索FLANN 
    和聚类Clustering算法。

  • ml模块机器学习模块(SVM,决策树,Boosting等等)。

  • photo模块包含图像修复和图像去噪两部分。

  • video模块针对视频处理,如背景分离,前景检测、对象跟踪等。

  • calib3d模块即Calibration(校准)3D,这个模块主要是相机校准和三维重建相关的内容。包含了基本的多视角几何算法,单个立体摄像头标定,物体姿态估计,立体相似性算法,3D信息的重建等等。

  • G-API模块包含超高效的图像处理pipeline引擎。

另外,原来在opencv2中的shape, superres, videostab, viz等模块被移动到opencv_contrib中,关于opencv contrib,我们以后再详细介绍。

 

04 OpenCV基本数据结构

OpenCv提供了多种基本的数据类型,常用的OpenCV的基本数据结构有以下几种:

  • Mat类

  • Point类

  • Size类

  • Rect类

  • Scalar类

  • Vec类

  • Range类

下面我们重点说一下MAT类。

4.1  Mat类

要熟练使用OpenCV,最重要的就是学会Mat数据结构,在OpenCV中Mat被定义为一个类,把它看作一个数据结构,以矩阵的形式来存储数据的。

Mat有哪些常见的属性?

  • dims:表示矩阵M的维度,如2*3的矩阵为2维,3*4*5的矩阵为3维

  • data:uchar型的指针,指向内存中存放矩阵数据的一块内存

  • rows, cols:矩阵的行数、列数

  • type:表示了矩阵中元素的类型(depth)与矩阵的通道个数(channels);命名规则为CV_ + (位数)+(数据类型)+(通道数)

    其中:U(unsigned integer)-- 无符号整数

    S(signed integer)-- 有符号整数

    F(float)-- 浮点数

    例如CV_8UC3,可拆分为:CV_:type的前缀, 

    8U:8位无符号整数(depth),C3:3通道(channels)

  • depth:即图像每一个像素的位数(bits);这个值和type是相关的。例如CV_8UC3中depth则是CV_8U。

  • channels:通道数量,若图像为RGB、HSV等三通道图像,则channels = 3;若图像为灰度图,则为单通道,则channels = 1

  • elemSize:矩阵中每一个元素的数据大小

    elemSize = channels * depth / 8 

    例如:type是CV_8UC3,elemSize = 3 * 8 / 8 = 3bytes

  • elemSize1:单通道的矩阵元素占用的数据大小

        elemSize1 = depth / 8

        例如:type是CV_8UC3,elemSize1 = 8 / 8 = 1bytes

4.2  其他数据类型

1.点Point类

包含两个整型数据成员x和y,即坐标点

2.尺寸Size类

数据成员是width和height,一般用来表示图像的大小,或者矩阵的大小

3.矩形Rect类

数据成员x,y,width,height,分别代表这个矩形左上角的坐标点和矩形的宽度和高度

4.颜色Scalar类

Scalar_(_Tp v0, _Tp v1, _Tp v2=0, _Tp v3=0)

这个默认构造函数的四个参数分别表示RGB+Alpha颜色中的: 

v0---表示RGB中的B(蓝色)分量 

v1---表示RGB中的G(绿色)分量 

v2---表示RGB中的R(红色)分量 

v3---表示Alpha是透明色分量 

5.向量Vec类

一个“一维矩阵”

Vec<int,n>---就是用类型int和向量模板类做一个实例化。其中第一个参数int表示Vec中存储的为int类型;第二个参数n为一个整型值,表示Vec每个对象中存储n个int值,也就是n维向量(列向量)

6.Range类

用于指定一个连续的子序列,例如一个轮廓的一部分,或者一个矩阵的列空间

 

05 基本IO操作

这里使用的是python接口

1.图像读写

cv2.imread(文件名,显示控制参数)  # 读入图像   

cv2.imshow(窗口名,图像名)   #显示图像

cv2.imwrite(文件地址,文件名)  #保存图像

cv2.namedWindow(窗口名)  #创建窗口

cv2.destroyAllWindows() #销毁窗口

cv2.waitKey(   [,delay])  #decay > 0 等待delay 毫秒

                                      #decay < 0 等待键盘单击

                                      #decay =  0 无限等待

2.图像缩放

dst = cv2.resize(src,dsize,fx,fy)  #dsize表示缩放大小 

                                                   #fx,fy缩放比例

3.图像翻转

dst = cv2.flip(src,flipCode) 

        #flipCode=0 以X轴为对称轴的翻转 

        #lipCode>0 以Y轴为对称轴的翻转 

        #flipCode<0 对X、Y轴同时翻转

4.通道拆分与合并

b,g,r = cv2.split(图像) 

b = cv2.split(图像)[通道数] #拆分

bgr = cv2.merge([b,g,r]) #合并

 

06 相关学习资料

6.1  网络资料

  • OpenCV Docs官方文档 

    https://docs.opencv.org/

  • OpenCV 官方Github

    https://github.com/opencv/opencv

  • OpenCV 中文教程

    http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/tutorials.html

6.2  中文书籍

  • Python计算机视觉编程

  • OpenCV 3计算机视觉:Python语言实现

  • OpenCV算法精解:基于Python与C++

最后,推荐一下大家的Opencv学习路线。

 

总结

本文简单介绍了OpenCV框架,它是计算机视觉领域必须要熟练掌握的工具,这一期我们没有说具体的算法和模块,以后会开设《OpenCV专题》讲述。

下期预告:下一期我们会说说Makefile和CMake的基础。

转载文章请后台联系

侵权必究

喜欢“白身境”系列,欢迎留言,支持有三继续写作下去

AI白身境系列完整阅读:

第一期:【AI白身境】深度学习从弃用windows开始

第二期:【AI白身境】Linux干活三板斧,shell、vim和git

第三期:【AI白身境】学AI必备的python基础

第四期:【AI白身境】深度学习必备图像基础

第五期:【AI白身境】搞计算机视觉必备的OpenCV入门基础

第六期:【AI白身境】只会用Python?g++,CMake和Makefile了解一下

第七期:【AI白身境】学深度学习你不得不知的爬虫基础

第八期: 【AI白身境】深度学习中的数据可视化

第九期:【AI白身境】入行AI需要什么数学基础:左手矩阵论,右手微积分

第十期:【AI白身境】一文览尽计算机视觉研究方向

第十一期:【AI白身境】AI+,都加在哪些应用领域了

第十二期:【AI白身境】究竟谁是paper之王,全球前10的计算机科学家

AI初识境系列完整阅读

第一期:【AI初识境】从3次人工智能潮起潮落说起

第二期:【AI初识境】从头理解神经网络-内行与外行的分水岭

第三期:【AI初识境】近20年深度学习在图像领域的重要进展节点

第四期:【AI初识境】激活函数:从人工设计到自动搜索

第五期:【AI初识境】什么是深度学习成功的开始?参数初始化

第六期:【AI初识境】深度学习模型中的Normalization,你懂了多少?

第七期:【AI初识境】为了围剿SGD大家这些年想过的那十几招

第八期:【AI初识境】被Hinton,DeepMind和斯坦福嫌弃的池化,到底是什么?

第九期:【AI初识境】如何增加深度学习模型的泛化能力

第十期:【AI初识境】深度学习模型评估,从图像分类到生成模型

第十一期:【AI初识境】深度学习中常用的损失函数有哪些?

第十二期:【AI初识境】给深度学习新手开始项目时的10条建议

 

11-16 Fluent结果查看及后处理功能(做动画、监控点) 监控点、面及动画操作 阅读详情

相关推荐

手把手教你用Wireshark抓包分析BLE广播包:从PDU结构到AD Type实战解析

本文详细介绍了如何使用Wireshark工具抓取并分析BLE广播包,从PDU结构到AD Type的实战解析。通过硬件设备选择、软件配置、协议栈解析及高级故障排查,帮助开发者深入理解蓝牙低功耗通信机制,提升物联网设备调试效率。

weixin_30482383的博客 418

OpenCV训练模型的AI人脸检测

通过对博文:《OpenCv视觉之眼》Python图像处理十八:Opencv图像处理实战三之基于OpenCV训练模型的AI人脸检测内容的复现(链接:https://blog.youkuaiyun.com/qq_42451251/article/details/108096629),发现部分问题,对文章内容进行重新梳理,记录大家尝试实现,也方便自己查阅。 目录 一、OpenCV人脸检测基础介绍 1、运行环境介绍 2、OpenCV人脸检测模型介绍 2、cv2.CascadeClassifier分类器函数介绍 3、

weixin_45396467的博客 4637

嵌入式开发中SAR与ΔΣ ADC选型指南:从原理到实战应用

模数转换器是嵌入式系统连接模拟世界与数字世界的核心接口,其选型直接决定了数据采集的精度与可靠性。SAR ADC采用逐次逼近原理,如同天平称重,通过二进制搜索快速完成转换,具备高速、多通道轮询的优势,适合电机控制、通信等动态场景。ΔΣ ADC则基于过采样与噪声整形技术,以速度换取精度,通过数字滤波输出高分辨率结果,在传感器测量、音频采集等静态高精度领域表现卓越。理解这两种架构的工作原理差异,是进行嵌入式ADC选型的基础。在实际工程中,需结合信号带宽、多通道切换需求、功耗约束及PCB布局能力进行综合权衡。例如,

weixin_30140399的博客 245

YOLOv8 Pose~瑜伽姿势识别

随着人们对瑜伽的兴趣日益浓厚,对能够准确分类瑜伽姿势的自动化系统的需求也越来越大。本文中我们将探讨如何使用 YOLOv8 Pose(一种先进的对象检测模型)对图像和视频中的瑜伽姿势进行分类。A. 将您的 roboflow 数据集或手动注释的数据集上传到 Google Drive 的单独文件夹(例如 Yoga)中,以便在 Colab 中轻松访问。在开始之前,需要一个包含各种瑜伽姿势的图像或视频的数据集,以及身体关键点的相应标注。C. 安装所需的依赖项: ​​​​​​​。whaosoft aiot htt

whaosoft143ai的博客 2644

Excel也能玩转K-means聚类?手把手教你用表格搞定用户分群(附完整公式)

本文详细介绍了如何在Excel中实现K-means聚类算法,无需编程即可完成用户分群。通过SUMIF、SQRT等基础函数,从数据预处理到最终分群全流程手把手教学,特别强调数据标准化和迭代优化的关键步骤,帮助运营团队低成本高效分析用户行为数据。

weixin_30555125的博客 181

Linux系统之部署经典魔塔小游戏

Linux系统之部署经典魔塔小游戏

jks212454的博客 1820

OpenCV与AI深度学习 | 实战 | YOLOv8自定义数据集训练实现手势识别 (标注+训练+预测 保姆级教程)

本文将手把手教你用YoloV8训练自己的数据集并实现手势识别。

csdn_xmj的博客 4195

CesiumJS【Basic】- #002 加载在线瓦片地图数据

cesiumjs 加载各类在线地图数据

AlanL的专栏 952

OpenCV与AI深度学习 | 实战 | 使用姿态估计算法构建简单的健身训练辅助应用程序

姿势估计是一个研究深入的领域,可应用于动作识别、活动跟踪、增强现实、动画、游戏等。姿势估计的目标是检测图像或视频中人体部位(如关节和四肢)的位置和方向。

csdn_xmj的博客 2042

医疗AI知识库更新慢?提示工程架构师用Agentic AI自动更新的策略

我们的目标是用Agentic AI替代传统更新流程中的“重复劳动”,让医疗知识库(以知识图谱为例)能自动跟踪最新医学进展,把“更新周期从数月缩短到数天”。从PubMed/指南数据库自动抓取新文献;用提示工程从文本中提取结构化医学知识;自动校验新知识与旧知识的冲突;将通过校验的知识写入知识图谱。拆问题:先讲医疗知识库更新慢的3大根源;给方案:用Agentic AI设计4个“小助手”解决问题;讲原理:每个小助手的工作逻辑+提示工程技巧;做实战。

AI 原生应用开发的博客 1062

rk3576 适配摄像头 (mipi 五摄)

在RK3576上实现五路CSI摄像头方案,核心思路是充分复用其视频输入接口,并通过巧妙的软件配置来实现。

weixin_35723192的博客 184

【计算机视觉】用opencv训练自己的数据集

这里注意:1.图像要从1000开始编号,不然后续如果样本数量太少会导致没法运行。2.文件路径是要修改的路径,而且是只能出现一对引号。将上图中的所有文件复制到目标Project根目录下。代码:建议正样本像素20* 20 ,负样本80。在文件夹中创建pos和neg两个文件夹。一般正样本文件数量要比负样本文件少。在正样本文件中打开cmd。标记完以后将之前的删除。对负样本进行相同操作。

weixin_73074012的博客 1779

Sigrity Power DC Package Multi-Resistor Compact ET Model Extraction模式提取封装基板电热阻模型

DIE(定义DIE的参数):material设置为silicon(硅),Attach material(贴片的材料,设置为Die Attach),Attach thickness(贴片的材料的厚度,厚度设置为0.001mm,点击ok。Cap为覆盖材料,Material定义材料类型,thickness定义厚度,length和width定义长宽,Adhesive Material为胶的材料,Adhesive Material为胶的厚度,本例不定义,跳过即可。

weixin_54787054的博客 440

「AI白身境」搞计算机视觉必备的OpenCV入门基础

https://www.toutiao.com/a6694013504078217741/ 曾经看过一个视频,树莓派自平衡机器人自动追着小球跑。不经让我脑子蹦出一个有趣的想法,可以做一个识别猫的机器人,让机器人跟着猫跑,有这样一个小东西陪伴喵星人一定很有意思。 不过,首先你要有一只猫,其次,这个机器人不仅要有一双会视觉处理的眼睛,还一定要有一个坚强的外壳,不然会被喵星人给拆了。 那机器...

喜欢打酱油的老鸟 627

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

opencv calibration_【AI白身境】搞计算机视觉必备的OpenCV入门基础

今天是新专栏《AI白身境》的第五篇。曾经看过一个视频,树莓派自平衡机器人自动追着小球跑。不经让我脑子蹦出一个有趣的想法,可以做一个识别猫的机器人,让机器人跟着猫跑,有这样一个小东西陪伴喵星人一定很有意思。不过,首先你要有一只猫,其次,这个机器人不仅要有一双会视觉处理的眼睛,还一定要有一个坚强的外壳,不然会被喵星人给拆了。那机器人是如何完成处理图像和视频的各项任务呢?开源的计算机视觉包——OpenC...

weixin_39901358的博客 205

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

【完结】听完这12次分享,你应该完成了AI小白的蜕变

文章首发于微信公众号《有三AI》 【完结】听完这12次分享,你应该完成了AI小白的蜕变 专栏《AI白身境》正式完结了,在这一个专题中,我们给大家从Linux的基本知识,讲到了深度学习中必备的数学基础,从基本工具VIM和编译命令,讲到了常用的库OpenCV,从AI在工业界的各个研究方向,应用方向,讲到了AI领域的代表性人物,虽然知识本身的难度不高,但是覆盖范围非常广泛,这一次我们来重新回顾一下。...

hacker_long的专栏 676

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

言有三文章 - AI系列完整阅读

言有三文章 - AI系列完整阅读 第一期:【AI白身境】深度学习从弃用windows开始 第二期:【AI白身境】Linux干活三板斧,shell、vim和git 第三期:【AI白身境】学AI必备的python基础 第四期:【AI白身境】深度学习必备图像基础 第五期:【AI白身境】搞计算机视觉必备的OpenCV入门基础 第六期:【AI白身境】只会用Python?g++,CMake和...

喜欢打酱油的老鸟 1155

opencv 入门

转载于https://bolebook.com/201907/yousanai/yousanai20190703.html#【AI白身境】搞计算机视觉必备的OpenCV入门基础 01、什么是OpenCV? 它是一款由Intel公司俄罗斯团队发起并参与和维护的一个计算机视觉处理开源软件库。 作为一款优秀的计算机视觉库,在诸多方面都有着卓越的表现: 1.编程语言 多数模块...

dijiaobo6023的博客 215

【完结】深度学习CV算法工程师从入门到初级面试有多远,大概是25篇文章的距离

文/编辑 | 言有三 一直有同学希望我在公众号写写面试相关的东西,一直没写。我们不会开相关的板块,因为没有标准,容易引起争议,而且可能会加重大家的浮躁和焦虑。 不过关于面试,有三还是有一些话可以说的,下面分两部分道来。 1 老板喜欢什么人 假如我是老板或者诚心为公司招聘优秀人才的面试官,我会喜欢拥有以下特质的人。这里说的是招聘一个算法工程师,一个能够为公司创造收益的人,简单起...

hacker_long的专栏 1万+

知乎用户和龙鹏-言有三:计算机视觉应该怎样入门?

本文来源与知乎网,版权归作者知乎用户和龙鹏-言有三所有~~~ 知乎用户: 自学了一段时间计算机视觉(Computer Vision),下文简称:CV。内容以基本概念为主,形式以看书为主,跟着敲代码为辅。 起因:因工作中会涉及到交通物流风险管理、出险理赔材料审查等内容,会涉及到大量人工介入审阅照片、视频的环节。而随着素材量的增加将来需要大量的人力来处理,导致成本高,效率低、易出错。思考:能否通...

ctrigger的专栏 1019

工业界 windows 比linux 多,「完结」听完这12次分享,你应该完成了AI小白的蜕变...

原标题:「完结」听完这12次分享,你应该完成了AI小白的蜕变专栏《AI白身境》正式完结了,在这一个专题中,我们给大家从Linux的基本知识,讲到了深度学习中必备的数学基础,从基本工具VIM和编译命令,讲到了常用的库OpenCV,从AI在工业界的各个研究方向,应用方向,讲到了AI领域的代表性人物,虽然知识本身的难度不高,但是覆盖范围非常广泛,这一次我们来重新回顾一下。作者 | 言有三编辑 | 言有三...

weixin_39847244的博客 290

【完结】深度学习CV算法工程师从入门到初级面试有多远,大概是25篇文章的距离...

文/编辑 | 言有三转载自言有三一直有同学希望我在公众号写写面试相关的东西,一直没写。我们不会开相关的板块,因为没有标准,容易引起争议,而且可能会加重大家的浮躁和焦虑。不...

湾区人工智能 830

opencv实战从0到N (10)—— adboost训练分类器

opencv实战从0到N (10)—— adboost训练分类器 Adboost级联分类器 1,Adboost级联分类器可以用来训练一个目标检测器,级联分类器包括多个强分类器,每个强分类器又包含多个弱分类器,通过将非目标样本一层层的排除,保证了目标检测的准确性。 2,如何利用Adboost训练目标检测器? opencv提供了训练的工具opencv_traincascade.exe。通过收集...

AI知识搬运工 761

AI入门之神经网络(8)使用opencv的ML模块中的ANN_MLP训练二分类检测睁眼和闭眼网络

使用opencv的ML模块中的ANN_MLP训练二分类检测睁眼和闭眼的5层网络 注释写的很清楚,你跟着注释写,一样可以写出来 话不多说直接上代码: #include "opencv2/opencv.hpp" #include "opencv2/ml.hpp" #include<iostream> using namespace std; using namespace cv; using namespace ml; void predict_mat(Mat img, Ptr<ANN_

qq_43475606的博客 3598

Opencv调用tensorflow训练自己的数据集生成的模型

Opencv调用tensorflow训练自己的数据集生成的模型 要实现opencv调用tensorflow训练的模型,主要分为两步,第一步是训练模型,将模型保存成model.pb格式,然后利用opencv的readNetFromTensorflow方法调用model.pb 一、训练生成模型: 训练生成模型的关键点: 1.将图片生成自己的数据集 2.将标签转换成独热编码 3.利用cnn训练模型,要获取输出的节点名称,最后是自己命名。 4.保存成pb模型,在这里会用到输出的节点名称,这一步是关键,否则openc

weixin_45081640的博客 2629

用 OpenCV+TensorFlow 和 AI 玩石头剪刀布

用 OpenCV 和 TensorFlow 实现石头剪刀布游戏。

cocofisher的博客 1367
上一篇: 【AI白身境】深度学习必备图像基础
下一篇: 【AI白身境】只会用Python?g++,CMake和Makefile了解一下​​​​​​​
言有三
言有三 领域专家: 人工智能技术领域 领域专家: 人工智能技术领域
博客等级 码龄15年 3635粉丝 976原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

言有三

三人行必有AI

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值