• python机器学习入门之opencv的使用(超详细,必看)


    源码及图片请点赞关注收藏后私信博主要 

    opencv广泛用于多种于计算机视觉和机器学习相关的算法 其用C++语言编写,主要接口也是C++语言 但也有python等环境的接口 接下来我们着重介绍他的使用。

    opencv python是一个用于解决计算机视觉问题的python库  opencv python与numpy兼容 数据都被转换成numpy数据结构

    安装可以看我这篇博客opencv的安装与配置

    部分方法使用方法如下 1:imshow() 显示图像 2:destroyallwindows用于卸载窗口 3:waitkey等待用户按键 其参数是延迟的时间

    1:将图像转换成灰度图输出并保存

    代码如下:

    1. import cv2
    2. print(cv2.__version__)
    3. img=cv2.imread(图片路径,0)
    4. cv2.imshow("image",img)
    5. k=cv2.waitKey(0)
    6. if k==27:
    7. cv2.destroyWindow()
    8. elif k==ord('s'):
    9. cv2.imwrite('result',img)
    10. cv2.destroyWindow()

    拆分通道并着色

    1. img=cv2.imread(r"图片路径",0)
    2. cv2.imshow('image',img)
    3. k=cv2.waitKey(0)
    4. if k==27:
    5. cv2.destroyAllWindows()
    6. elif k==ord('s'):
    7. b,g,r=cv2.split(img)
    8. zeros=np.zeros(img.shape[:2],dtype="uint8")
    9. imgr=cv2.merge([zeros,zeros,r])
    10. imgg=cv2.merge([zeros,g,zeros])
    11. imgb=cv2.merge([b,zeros,zeros])
    12. cv2.imwrite('r.png',imgr)
    13. cv2.imwrite('g.png',imgg)
    14. cv2.imwrite('b.png',imgb)
    15. cv2.destroyAllWindows()

    捕获摄像头

    1. cap=cv2.VideoCapture(0)
    2. while(True):
    3. ret,frame=cap.read()
    4. cv2.imshow(u"Capture",frame)
    5. key=cv2.waitKey(1)
    6. if key&0xff==ord('q')or key==27:
    7. print(frame.shape,ret)
    8. break
    9. cap.release()
    10. cv2.destroyAllWindows()

    3:摄像头范围内的人脸检测

    效果如下 可以识别出人脸并用 矩形圈出

    代码如下

    1. import cv2
    2. cascpath=r"路径"
    3. faceCascade=cv2.CascadeClassifier(cascpath)
    4. cap=cv2.VideoCapture(0)
    5. while(True):
    6. ret,img=cap.read()
    7. faces=faceCascade.detectMultiScale(img,1.2,2,cv2.CASCADE_SCALE_IMAGE,(20,20))
    8. for(x,y,w,h) in faces:
    9. img=cv2.rectangle(img,(x,y),(x+w,y+h),(0,255,0),2)
    10. cv2.imshow(u"detect",img)
    11. key=cv2.waitKey(1)
    12. if key&0xFF==ord('q')or key ==27:
    13. break
    14. cv2.destroyWindow()
    15. cv2.release()

    源码及图片请点赞关注收藏后私信博主要 ​​​​​​​

  • 相关阅读:
    如何使用`java.net`包进行网络编程?
    Python —— UI自动化之 三大等待与三大切换
    【Azure App Service】.NET代码实验App Service应用中获取TLS/SSL 证书 (App Service Windows)
    Session详解
    多亏了这个神器,让我斩获华为入场券
    NC14695 不可名状之物
    能不能手写Vue响应式?前端面试进阶
    heic图片如何转为jpg格式
    springboot+task整合(定时任务)
    【C】语言文件操作(二)
  • 原文地址:https://blog.csdn.net/jiebaoshayebuhui/article/details/126765660