python OpenCV的环境搭建及其简单使用

python语言越来越火,感觉再不使用就要out了。以前用C++做过一些关于OpenCV的小项目,这次用python试试。

 

一、python-OpenCV环境搭建

现在再来搭建python和OpenCV的环境实在太方便了,各种封装很完备,各种资料也很容易查找到。 

一般来说有两种方式,

  • pycharm加本地安装的python环境用pip下载安装,在命令行窗口仅需输入pip install opencv-python即可。
  • anaconda,打开Anaconda Powershell Prompt, 在命令窗口输入conda install -c conda-forge opencv后下载安装。(详见https://anaconda.org/conda-forge/opencv

这个下载后好像还不够,还需加入conda install -c fastai opencv-python-headless (https://anaconda.org/fastai/opencv-python-headless)。

通过导入import cv2,如果能够打印出print(cv2.version.opencv_version)版本信息,则说明环境没问题了。

 

二、简单使用

这里想做个一个二维码跟踪和解码的实验。以前还得使用第三方库,现在opencv就已经封装好了,就是QRCodeDetector API。详细代码如下:

import cv2 as cv
import numpy as np


cap = cv.VideoCapture("D:/test.mp4")
qrcoder = cv.QRCodeDetector()
while True:
    ret, frame = cap.read()
    if ret:
        codeinfo, bbox, straight_qrcode = qrcoder.detectAndDecode(frame)
        if bbox is not None:
            pointOne = tuple(bbox[0][0])
            cv.drawContours(frame, [np.int32(bbox)], 0, (0, 0, 255), 2)
            cv.putText(frame, codeinfo, (np.int32(pointOne[0]), np.int32(pointOne[1])), cv.FONT_HERSHEY_SIMPLEX, 1, (0, 255, 0), 2)
        cv.imshow("frame", frame)
    else:
        break
    key = cv.waitKey(25)
    if key == 27:
        break
cap.release()
cv.destroyAllWindows()

这里是读取一个视频文件(通过摄像头也是一样的),当有二维码出现时,则detectAndDecode可以提取到二维码的顶点信息,然后代码中会将二维码的轮廓和解析后的内容显示在图像上。

关于二维码的制作,网上也有很多小工具,这里就不再阐述了。

最后运行效果如下:

 

Enjoy!

 

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值
>