OpenCV-Python速查表:从导入图像到人脸检测_使用jupyter用opencv实现对图像进行五官检测

gray_image 是灰度图像的单通道版本。

这个threshold函数将把所有比127深(小)的像素点阴影值设定为0,所有比127亮(大)的像素点阴影值设定为255。

另一个例子:

这将把所有阴影值小于150的像素点设定为10和所有大于150的像素点设定为200。

更多有关thresholding函数的内容,请查看这里。(https://docs.opencv.org/3.4/d7/d4d/tutorial_py_thresholding.html  )

左图:灰阶狗狗。右图:黑白狗狗。

模糊/平滑

左图:图像来自Pixabay。右图:模糊后的狗狗。

高斯模糊函数接受3个参数:

第一个参数是要模糊的图像。

第二个参数必须是一个由两个正奇数组成的元组。当它们增加,模糊效果也会增加。

第三个参数是sigmaX和sigmaY。当左边位于0时,它们会自动从内部大小计算出来。

更多关于模糊函数的内容,请查看这里。(https://docs.opencv.org/3.1.0/d4/d13/tutorial_py_filtering.html  )

在图像上绘制矩形框或边框

左图:图像来自Pixabay。右图:脸上有一个矩形框的狗狗。

rectangle函数接受5个参数:

第一个参数是图像。

第二个参数是x1, y1 -左上角坐标。

第三个参数是x2, y2 -右下角坐标。

第四个参数是矩形颜色(GBR/RGB,取决于你如何导入图像)。

第五个参数是矩形线宽。

绘制一条线

左图:图像来自Pixabay。右图:两只狗狗用一条线分开。

line函数接受5个参数:

第一个参数是要画的线所在的图像。

第二个参数是x1, y1。

第三个参数是x2, y2。

第四个参数是线条颜色(GBR/RGB,取决于你如何导入图像)。

第五个参数是线宽。

在图片上写入文字

左图:图像来自Pixabay。右图:两只狗狗用一条线分开。

putText函数接受 七个参数:

第一个参数是要写入文本的图像。

第二个参数是待写入文本。

第三个参数是x, y——文本开始的左下角坐标。

第四个参数是字体类型。

第五个参数是字体大小。

第六个参数是颜色(GBR/RGB,取决于你如何导入图像)。

第七个参数是文本线条的粗细。

人脸检测

这里没有找到狗狗照片,很遗憾:(

图片来自Pixabay,作者:Free-Photos。

detectMultiScale函数是一种检测对象的通用函数。因为我们调用的是人脸级联,所以它会检测到人脸。

detectMultiScale函数接受4个参数:

第一个参数是灰阶图像。

第二个参数是scaleFactor。因为有些人脸可能离镜头更近,所以看起来会比后台的人脸更大。比例系数弥补了这一点。

检测算法使用一个移动窗口来检测对象。minNeighbors定义在当前对象附近检测到多少对象,然后再声明检测到人脸。

与此同时,minsize给出了每个窗口的大小。

检测到两张人脸。

轮廓——一种对象检测方法

使用基于颜色的图像分割,你可以来检测对象。

cv2.findContours & cv2.drawContours 这两个函数可以帮助你做到这一点。

最近,我写了一篇非常详细的文章,叫做《使用Python通过基于颜色的图像分割来进行对象检测》。你需要知道的关于轮廓的一切都在那里。(https://towardsdatascience.com/object-detection-via-color-based-image-segmentation-using-python-e9b7c72f0e11  )

最终,保存图片

总结

OpenCV是一个非常容易使用的算法库,可以用于3D建模、高级图像和视频编辑、跟踪视频中的标识对象、对视频中正在做某个动作的人进行分类、从图像数据集中找到相似的图像,等等。

最重要的是,学习OpenCV对于那些想要参与与图像相关的机器学习项目的人来说是至关重要的。

最后

Python崛起并且风靡,因为优点多、应用领域广、被大牛们认可。学习 Python 门槛很低,但它的晋级路线很多,通过它你能进入机器学习、数据挖掘、大数据,CS等更加高级的领域。Python可以做网络应用,可以做科学计算,数据分析,可以做网络爬虫,可以做机器学习、自然语言处理、可以写游戏、可以做桌面应用…Python可以做的很多,你需要学好基础,再选择明确的方向。这里给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

👉Python所有方向的学习路线👈

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

👉Python必备开发工具👈

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

👉Python全套学习视频👈

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

👉实战案例👈

学python就与学数学一样,是不能只看书不做题的,直接看步骤和答案会让人误以为自己全都掌握了,但是碰到生题的时候还是会一筹莫展。

因此在学习python的过程中一定要记得多动手写代码,教程只需要看一两遍即可。

👉大厂面试真题👈

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

需要这份系统化学习资料的朋友,可以戳这里无偿获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
的工作。

需要这份系统化学习资料的朋友,可以戳这里无偿获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 22
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值