IMX477 12.3MP Camera

来自Waveshare Wiki
Zsmin讨论 | 贡献2023年1月7日 (六) 16:21的版本 →‎备注
跳转至: 导航搜索

说明

IMX477 12.3MP Camera
{{{name2}}}
{{{name3}}}
功能简介
特性 1230万像素
模组 IMX477R
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
接口 CSI

参数

  • 传感器
    • IMX477R
    • 1230万像素: 4056(H) x 3040(V)
    • CMOS对角线长度: 7.9mm
    • 单像素尺寸: 1.55μm(H) x 1.55μm (V)
  • 输出格式:RAW12 / 10 / 8,COMP8
  • 镜头标准
    • C-mount
    • CS-mount(包括C/CS连接环)
  • 红外滤光片:集成

可用镜头

镜头型号 6mm-Wide-Angle-Lens-for-Pi-1.jpg
6mm 广角镜头
16mm-Telephoto-Lens-for-Pi-1.jpg
16mm 长焦镜头
25mm-Telephoto-Lens-for-Pi-1.jpg
25mm 长焦镜头
35mm-Telephoto-Lens-for-Pi-1.jpg
35mm 长焦镜头
8-50mm-Zoom-Lens-for-Pi-1.jpg
8-50mm 变焦镜头
镜面尺寸 1/2" 1" 2/3" 1" 1/2.3"
通光孔径 F1.2 F1.4-16 F1.4-16 F1.7-16 F1.4
镜头安装接口 CS-mount C-mount
视场角 63° 1″ 44.6° × 33.6°
2/3″ 30.0° × 23.2°
1/1.8″ 24.7° × 18.6°
1/2″ 21.8° ×16.4°
2/3" 20.2°×15.1°
1/1.8″ 16.5°×12.4°
1/2″ 14.5°×10.5°
1″ 20.9°×15.8°
2/3″ 14.4°×10.8°
1/2″ 10.5°×7.9°
45°-5.35°
后焦距 7.53mm 17.53mm
光学总长 - 67.53mm -
畸变 - 1″(-0.7%)
1/2″(-0.5%)
1/3″(-0.15%)
0.05% 0.35% -
最近物距 0.20m 0.20m 0.25m 0.30m 0.20m
外形尺寸 Φ30.00 × 34.00mm Φ39.00 × 50.00mm Φ34.00×34.00mm Φ35.00×34.00mm Φ40.00×68.30mm
操作方法 手动光圈
产品重量 53g 133.7g 82g 78g 148g

备注

IMX477 12.3MP Camera目前只适用于树莓派Compute Module系列板,不适用于树莓派主板。
IMX477 12.3MP Camera可使用于Jetson Nano.

Jetson Nano使用方法

  • 更换摄像头型号为IMX477

终端输入

sudo /opt/nvidia/jetson-io/jetson-io.py

选择Configure Jetson Nano CSI Connector -> Configure for compatible hardware -> 选择需要的设置

 Camera IMX219 Dual    两个摄像头接口设置为IMX219                     
 Camera IMX477 Dual    两个摄像头接口设置为IMX477                     
 Camera IMX477-A and IMX219-B  一个摄像头接口设置为IMX477,另一个设置为IMX219

选择 Save Pin changes ->Save and reboot to reconfigure pins ->按下任意键重启

  • 硬件连接
    • 将摄像头排线,金属面朝向散热板插入Jetson Nano 开发套件上的摄像头接口
    • 启动Jetson Nano
  • 测试摄像头
    • 打开终端(键盘按下Ctrl+ALT+T快捷键打开终端),输入以下指令测试摄像头
DISPLAY=:0.0 gst-launch-1.0 nvarguscamerasrc ! 'video/x-raw(memory:NVMM), width=1920, height=1080, format=(string)NV12, framerate=(fraction)20/1' ! nvoverlaysink -e
  • 测试双摄像头
    • 如果需要测试双摄像头,可以添加sensor-id=x 来选择摄像头。x可以为0 或者 1
#测试video0
DISPLAY=:0.0 gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! 'video/x-raw(memory:NVMM), width=1920, height=1080, format=(string)NV12, framerate=(fraction)20/1' ! nvoverlaysink -e
#测试video1
DISPLAY=:0.0 gst-launch-1.0 nvarguscamerasrc sensor-id=1 ! 'video/x-raw(memory:NVMM), width=1920, height=1080, format=(string)NV12, framerate=(fraction)20/1' ! nvoverlaysink -e

【注意】

- NV12的12是数字而不是字母

- 测试画面是输出到HDMI或者DP屏幕的,所以测试的时候要先连接屏幕到Jetson Nano


资料

文档

相关链接

树莓派入门教程(新)
树莓派入门教程
树莓派OpenCV教程
树莓派littleGL系列教程
树莓派QT教程
树莓派OpenWrt教程


FAQ


  • 在不同的拍摄环境下,可能会出现白平衡效果不正常的情况。用户可以自己根据实际使用情况调节白平衡参数。
  • 以下opencv的调节代码只作参考。(该代码由RPi Camera (G)使用用户分享)
import picamera
import picamera.array
import cv2
from time import sleep
import numpy as np

def test_gcamera():   
    cv2.namedWindow("img",0)
    with picamera.PiCamera() as camera:
        camera.resolution = (1920, 1080)
        camera.awb_mode = 'off'
        rg, bg = (1.8, 1.4)
        camera.awb_gains = (rg, bg)
        with picamera.array.PiRGBArray(camera) as output:
            for foo in camera.capture_continuous(output, 'rgb', use_video_port=True):
                img = cv2.cvtColor(output.array, cv2.COLOR_RGB2BGR)
                cv2.imshow("img", img)
                cv2.waitKey(1)
                cv2.imwrite("test.jpg",img)
                r, g, b = (np.mean(output.array[..., i]) for i in range(3))
                if abs(r - g) > 2:
                    if r > g:
                        rg -= 0.1
                    else:
                        rg += 0.1
                if abs(b - g) > 1:
                    if b > g:
                        bg -= 0.1
                    else:
                        bg += 0.1
                camera.awb_gains = (rg, bg)
                output.seek(0)
                output.truncate(0)
if __name__=="__main__":
    test_gcamera()



技术支持


联系人:张工
邮箱:3004637648@qq.com
QQ:3004637648
微信:扫下方二维码添加
QRCode SiminZhang.png

说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证