Difference between revisions of "V4L2 mode for Raspberry Pi/zh"

From wiki_veye
Jump to navigation Jump to search
Line 19: Line 19:
  
 
==== 下载驱动包 ====
 
==== 下载驱动包 ====
<code>git clone https://github.com/veyeimaging/raspberrypi_v4l2<nowiki/>.git</code>
+
<code>git clone https://github.com/veyeimaging/raspberrypi_v4l2<nowiki/>.git</code><code><nowiki/></code>
 
 
安装驱动<br /><code>cd raspberrypi_v4l2/release/</code>
 
  
 +
==== 安装驱动 <code>cd raspberrypi_v4l2/release/</code> ====
 
<code>chmod +x *</code>
 
<code>chmod +x *</code>
  
Line 30: Line 29:
  
 
然后重启树莓派。
 
然后重启树莓派。
 +
 +
==== 卸载驱动 ====
 +
如需更换为raspicam模式,或者想要更换成其他摄像头模组型号的驱动,必须要先卸载现在的驱动。
 +
 +
<code>sudo ./uninstall_driver.sh [camera module]</code>
 +
 +
camera module:可以是veye327,csimx307,cssc132等。
  
 
=== 摄像头状态验证 ===
 
=== 摄像头状态验证 ===
Line 55: Line 61:
  
 
=== 参数控制软件包使用 ===
 
=== 参数控制软件包使用 ===
<br />
+
由于我们的摄像头参数自由度比较高,并没有采用V4L2参数进行控制,而是使用脚本进行参数配置。
 +
 
 +
https://github.com/veyeimaging/raspberrypi/tree/master/i2c_cmd
 +
 
 +
[[VEYE MIPI 290/327 for Raspberry Pi/zh#.E8.A7.86.E9.A2.91.E6.8E.A7.E5.88.B6.E8.BD.AF.E4.BB.B6.E5.8C.85.E4.BD.BF.E7.94.A8|VEYE系列参数控制软件包使用说明]]<br />[[CS-MIPI-X for Raspberry Pi/zh#.E8.A7.86.E9.A2.91.E6.8E.A7.E5.88.B6.E8.BD.AF.E4.BB.B6.E5.8C.85.E4.BD.BF.E7.94.A8|CS系列参数控制软件包使用说明]]
 
=== 源代码编译方法 ===
 
=== 源代码编译方法 ===
 
<br />
 
<br />

Revision as of 16:08, 30 December 2020

English

1 如何在树莓派平台使用VEYE和CS系列摄像头模组(V4L2模式)

1.1 概述

针对VEYE系列和CS系列摄像头模组在树莓派平台的使用方式,我们提供了类似raspicam模式的应用层开源软件——veye_raspicam软件。该系列软件,无需驱动支持,对piOS不同版本的兼容性好。但是,我们认为V4L2驱动模式,也有比较广泛的应用场合。两种模式不能同时使用,具体体现在驱动是否安装上。后文会有详细描述。

本文描述怎样在树莓派平台,通过V4L2方式调用VEYE系列和CS系列的摄像头模组。

1.2 硬件准备及安装

VEYE系列的硬件准备及安装

CS系列的硬件准备及安装

1.3 树莓派系统配置

树莓派系统配置

1.4 驱动安装

1.4.1 下载驱动包

git clone https://github.com/veyeimaging/raspberrypi_v4l2.git

1.4.2 安装驱动 cd raspberrypi_v4l2/release/

chmod +x *

sudo ./install_driver.sh [camera module]

camera module:可以是veye327,csimx307,cssc132等。

然后重启树莓派。

1.4.3 卸载驱动

如需更换为raspicam模式,或者想要更换成其他摄像头模组型号的驱动,必须要先卸载现在的驱动。

sudo ./uninstall_driver.sh [camera module]

camera module:可以是veye327,csimx307,cssc132等。

1.5 摄像头状态验证

以veye327为例:

dmesg | grep veye

可以看到:

veye327 camera probed
并且/dev/video0 节点存在,证明摄像头状态正常。

1.6 Gstreamer应用范例

export DISPLAY=:0

  • 抓拍一张图片

gst-launch-1.0 v4l2src num-buffers=1 device=/dev/video0 ! 'video/x-raw, format=(string)UYVY, width=1920,height=1080' ! jpegenc ! filesink location=test_image.jpg

  • 视频预览

gst-launch-1.0 v4l2src device=/dev/video0 ! "video/x-raw,format=(string)UYVY, width=(int)1920, height=(int)1080,framerate=(fraction)30/1" ! videoconvert ! autovideosink sync=false -v

  • 帧率测试

gst-launch-1.0 v4l2src device=/dev/video0 ! "video/x-raw,format=(string)UYVY, width=(int)1920, height=(int)1080,framerate=(fraction)30/1" ! videoconvert ! fpsdisplaysink video-sink=fakesink -v

1.7 参数控制软件包使用

由于我们的摄像头参数自由度比较高,并没有采用V4L2参数进行控制,而是使用脚本进行参数配置。

https://github.com/veyeimaging/raspberrypi/tree/master/i2c_cmd

VEYE系列参数控制软件包使用说明
CS系列参数控制软件包使用说明

1.8 源代码编译方法


1.9 参考资料

  • 树莓派的piOS编译方案:

https://www.raspberrypi.org/documentation/linux/kernel/building.md