树莓派4B新版本使用imx219CSI摄像头进行OpenCV调用解决方案(可行验证过,注意只能用于opencv)

最近在做一个关于视觉监测的项目,需要高像素,一开始使用的是ov5647,发现精度不够,故换用了imx219,到手发现极难调通,磨难了三天,搜遍了全部教程后才最终解决,/(ㄒoㄒ)/~~,Linux真的难用。将正确流程分享出来,希望帮助到大家!注意是新版系统!!!

1.首先确保自己正确安装了opencv库(python)

(如果没有可参考以下博客)

超简单教你在树莓派上安装opencv(一)_树莓派安装opencv-CSDN博客

2.编辑配置文件

(1)修改config.txt

打开命令窗口,输入以下指令

sudo nano /boot/firmware/config.txt

再如下找到这段话,前面加上#(我已经加上了,会变成青色)

再向下翻找到最后,补上以上几段话

gpu_mem=256
start_x=1
dtoverlay=imx219

Ctrl+O保存,回车确认,再Ctrl+X离开

(2)下载raspicam2

sudo apt install python3-picamera2

(3)重启

3.试运行

用自带的Thonny运行以下代码

from picamera2 import Picamera2
import cv2
import time

picam2 = Picamera2()	#创建摄像头对象开启摄像头
config = picam2.create_preview_configuration(main={"format": 'XRGB8888', "size": (640, 480)})
picam2.configure(config)
picam2.start()	#开启摄像头,无需重复开启
time.sleep(1)
#fps = picam2.get(cv2.CAP_PROP_FPS)
#抓拍
while 1:
    array = picam2.capture_array("main")	#捕获一帧相机数据,输出为numpy.ndarray类型
    cv2.imshow('test', array)               #显示捕获的图像
    #print("FPS: '{}'".format(fps))
    key = cv2.waitKey(1)
    if key & 0x00FF == ord('q'):
        break
    #cv2.waitKey(0)	#按任意键关闭预览窗口
    #cv2.destroyWindow('test')

会出现显示图像的小窗口了

如果要深入研究raspicam2,建议参考以下文章

Picamera2的使用-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值