ISP 图像信号处理器软件框架

2023-10-20 20:59

本文主要是介绍ISP 图像信号处理器软件框架,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

zynqmp_cam_isp_demo_linux

ZynqMP-ISP 图像信号处理器数字IP实现 的linux软件项目
待更新

在这里插入图片描述

#u-boot 配置nfsroot, tftp下载kernel和dtb, 启动kernel
setenv bootargs 'earlycon console=ttyPS1,115200 clk_ignore_unused root=/dev/nfs rw nfsroot=192.168.1.10:/tftpboot/zynqmp/rootfs,nolock,nfsvers=3 ip=dhcp cma=1000M '
setenv ipaddr 192.168.137.123; setenv netmask 255.255.255.0; setenv gatewayip 192.168.137.1; setenv serverip 192.168.1.10
tftpboot 0x00200000 zynqmp/Image; tftpboot 0x00100000 zynqmp/system.dtb
booti 0x00200000 - 0x00100000
#加载PL及其dtbo
mkdir -p /configfs
mount -t configfs configfs /configfs
echo 0 > /sys/class/fpga_manager/fpga0/flags
mkdir /configfs/device-tree/overlays/full
echo -n "pl.dtbo" > /configfs/device-tree/overlays/full/path
#配置AR1335,MIPI-RX格式
media-ctl --set-v4l2 '"ar1335 3-0036":0[fmt:SGRBG10_1X10/2048x1536 field:none]'
media-ctl --set-v4l2 '"a0030000.mipi_rx_to_video":0[fmt:SGRBG10_1X10/2048x1536 field:none]'
media-ctl --set-v4l2 '"a0030000.mipi_rx_to_video":1[fmt:SGRBG10_1X10/2048x1536 field:none]'
media-ctl --set-v4l2 '"axi:camif_ias1_axis_subsetconv":0[fmt:SGRBG10_1X10/2048x1536 field:none]'
media-ctl --set-v4l2 '"axi:camif_ias1_axis_subsetconv":1[fmt:Y10_1X10/2048x1536]'
#配置ISP,VIP格式
media-ctl -d /dev/media1 --set-v4l2 '"a0070000.xil_isp_lite":0[fmt:Y10_1X10/2048x1536 field:none]'
media-ctl -d /dev/media1 --set-v4l2 '"a00a0000.xil_vip":1[fmt:UYVY8_1X16/1920x1080 field:none]'
v4l2-ctl -d /dev/video2 -c low_latency_controls=2
#配置libcamera运行时环境
export LIBCAMERA_IPA_MODULE_PATH=/usr/lib/libcamera
export LIBCAMERA_IPA_PROXY_PATH=/usr/libexec/libcamera
export LIBCAMERA_IPA_CONFIG_PATH=/usr/share/libcamera/ipa
#libcamera-cam测试
cam -c 1 -s width=1920,height=1080,pixelformat=YUYV,role=video,colorspace=rec709 --capture=10 --file
#gst-lanuch显示测试
gst-launch-1.0 libcamerasrc camera-name="/base/axi/i2c@a0010000/camera@36" ! video/x-raw,format=YUY2,width=1920,height=1080,framerate=30/1 ! kmssink bus-id=fd4a0000.display fullscreen-overlay=1 async=false

V4L2设备拓扑

root@zynqmp-common-20221:~# media-ctl -d /dev/media0 --print-topology
Media controller API version 5.15.0Media device information
------------------------
driver          xilinx-video
model           Xilinx Video Composite Device
serial
bus info
hw revision     0x0
driver version  5.15.0Device topology
- entity 1: vcap_mipi_csi2_rx_ias1 output 0 (1 pad, 1 link)                                 <<< MIPIRX图像输出type Node subtype V4L flags 0device node name /dev/video0pad0: Sink<- "axi:camif_ias1_axis_subsetconv":1 [ENABLED]- entity 5: ar1335 3-0036 (1 pad, 1 link)type V4L2 subdev subtype Sensor flags 0device node name /dev/v4l-subdev0pad0: Source[fmt:SGRBG10_1X10/2048x1536 field:none colorspace:srgb]-> "a0030000.mipi_rx_to_video":0 [ENABLED]- entity 7: a0030000.mipi_rx_to_video (2 pads, 2 links)type V4L2 subdev subtype Unknown flags 0device node name /dev/v4l-subdev1pad0: Sink[fmt:SGRBG10_1X10/2048x1536 field:none]<- "ar1335 3-0036":0 [ENABLED]pad1: Source[fmt:SGRBG10_1X10/2048x1536 field:none]-> "axi:camif_ias1_axis_subsetconv":0 [ENABLED]- entity 10: axi:camif_ias1_axis_subsetconv (2 pads, 2 links)type V4L2 subdev subtype Unknown flags 0device node name /dev/v4l-subdev2pad0: Sink[fmt:SGRBG10_1X10/2048x1536 field:none]<- "a0030000.mipi_rx_to_video":1 [ENABLED]pad1: Source[fmt:Y10_1X10/2048x1536 field:none]-> "vcap_mipi_csi2_rx_ias1 output 0":0 [ENABLED]root@zynqmp-common-20221:~# media-ctl -d /dev/media1 --print-topology
Media controller API version 5.15.0Media device information
------------------------
driver          xilinx-video
model           Xilinx Video Composite Device
serial
bus info
hw revision     0x0
driver version  5.15.0Device topology
- entity 1: isp_pipe_video_dev output 1 (1 pad, 1 link)                                <<< ISP图像输出type Node subtype V4L flags 0device node name /dev/video1pad0: Sink<- "a00a0000.xil_vip":1 [ENABLED]- entity 5: isp_pipe_video_dev input 0 (1 pad, 1 link)                                 <<< ISP图像输入type Node subtype V4L flags 0device node name /dev/video2pad0: Source-> "a0070000.xil_isp_lite":0 [ENABLED]- entity 9: a0070000.xil_isp_lite (2 pads, 2 links)type V4L2 subdev subtype Unknown flags 0device node name /dev/v4l-subdev3pad0: Sink[fmt:Y10_1X10/2048x1536 field:none colorspace:srgb]<- "isp_pipe_video_dev input 0":0 [ENABLED]pad1: Source[fmt:YUV10_1X30/2048x1536 field:none colorspace:srgb]-> "a00a0000.xil_vip":0 [ENABLED]- entity 12: xil-isp-lite_stat (1 pad, 0 link)                                         <<< ISP统计输出type Node subtype V4L flags 0device node name /dev/video3pad0: Sink- entity 16: a00a0000.xil_vip (2 pads, 2 links)type V4L2 subdev subtype Unknown flags 0device node name /dev/v4l-subdev4pad0: Sink[fmt:YUV10_1X30/2048x1536 field:none colorspace:srgb]<- "a0070000.xil_isp_lite":1 [ENABLED]pad1: Source[fmt:UYVY8_1X16/1920x1080 field:none colorspace:srgb]-> "isp_pipe_video_dev output 1":0 [ENABLED]

在这里插入图片描述

项目代码: https://github.com/bxinquan/zynqmp_cam_isp_demo_linux

这篇关于ISP 图像信号处理器软件框架的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/249682

相关文章

如何确定哪些软件是Mac系统自带的? Mac系统内置应用查看技巧

《如何确定哪些软件是Mac系统自带的?Mac系统内置应用查看技巧》如何确定哪些软件是Mac系统自带的?mac系统中有很多自带的应用,想要看看哪些是系统自带,该怎么查看呢?下面我们就来看看Mac系统内... 在MAC电脑上,可以使用以下方法来确定哪些软件是系统自带的:1.应用程序文件夹打开应用程序文件夹

Python中OpenCV与Matplotlib的图像操作入门指南

《Python中OpenCV与Matplotlib的图像操作入门指南》:本文主要介绍Python中OpenCV与Matplotlib的图像操作指南,本文通过实例代码给大家介绍的非常详细,对大家的学... 目录一、环境准备二、图像的基本操作1. 图像读取、显示与保存 使用OpenCV操作2. 像素级操作3.

C/C++的OpenCV 进行图像梯度提取的几种实现

《C/C++的OpenCV进行图像梯度提取的几种实现》本文主要介绍了C/C++的OpenCV进行图像梯度提取的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录预www.chinasem.cn备知识1. 图像加载与预处理2. Sobel 算子计算 X 和 Y

c/c++的opencv图像金字塔缩放实现

《c/c++的opencv图像金字塔缩放实现》本文主要介绍了c/c++的opencv图像金字塔缩放实现,通过对原始图像进行连续的下采样或上采样操作,生成一系列不同分辨率的图像,具有一定的参考价值,感兴... 目录图像金字塔简介图像下采样 (cv::pyrDown)图像上采样 (cv::pyrUp)C++ O

C++ HTTP框架推荐(特点及优势)

《C++HTTP框架推荐(特点及优势)》:本文主要介绍C++HTTP框架推荐的相关资料,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. Crow2. Drogon3. Pistache4. cpp-httplib5. Beast (Boos

SpringBoot基础框架详解

《SpringBoot基础框架详解》SpringBoot开发目的是为了简化Spring应用的创建、运行、调试和部署等,使用SpringBoot可以不用或者只需要很少的Spring配置就可以让企业项目快... 目录SpringBoot基础 – 框架介绍1.SpringBoot介绍1.1 概述1.2 核心功能2

Python+wxPython构建图像编辑器

《Python+wxPython构建图像编辑器》图像编辑应用是学习GUI编程和图像处理的绝佳项目,本教程中,我们将使用wxPython,一个跨平台的PythonGUI工具包,构建一个简单的... 目录引言环境设置创建主窗口加载和显示图像实现绘制工具矩形绘制箭头绘制文字绘制临时绘制处理缩放和旋转缩放旋转保存编

Spring框架中@Lazy延迟加载原理和使用详解

《Spring框架中@Lazy延迟加载原理和使用详解》:本文主要介绍Spring框架中@Lazy延迟加载原理和使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、@Lazy延迟加载原理1.延迟加载原理1.1 @Lazy三种配置方法1.2 @Component

python+OpenCV反投影图像的实现示例详解

《python+OpenCV反投影图像的实现示例详解》:本文主要介绍python+OpenCV反投影图像的实现示例详解,本文通过实例代码图文并茂的形式给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录一、前言二、什么是反投影图像三、反投影图像的概念四、反向投影的工作原理一、利用反向投影backproj

使用Python实现图像LBP特征提取的操作方法

《使用Python实现图像LBP特征提取的操作方法》LBP特征叫做局部二值模式,常用于纹理特征提取,并在纹理分类中具有较强的区分能力,本文给大家介绍了如何使用Python实现图像LBP特征提取的操作方... 目录一、LBP特征介绍二、LBP特征描述三、一些改进版本的LBP1.圆形LBP算子2.旋转不变的LB