关于树莓派新系统二三事(Bullseye)

云深之无迹 2022-01-02 23:12


前面是关于USB转TTL连接,后面是一些影像系统的事情:


做实验的是树莓派2B+(其实就是树莓派2B,他们就出了一个型号)



正面是这样的


这是他的基本配置:

    一个 900MHz 四核 ARM Cortex-A7 CPU1GB 内存100 基以太网4 个 USB 端口40 个 GPIO 引脚全HDMI端口结合 3.5 毫米音频插孔和复合视频相机接口 (CSI)显示接口 (DSI)微型 SD 卡插槽VideoCore IV 3D 图形核心


26年才会不卖?而且写的是至少,博通真会玩



接口的图,感觉很漂亮

横放着的引脚图



其它类型的引脚图



左实际映射,右是芯片的引脚映射



通过GPIO,利用杜邦线连接树莓派的TX与RX【即图中GPIO14与15】



最边的两个脚,连着都是5V,然后是GND

也就是说 5V,5V,GND,TX,RX。



全网高清大图


TX连接树莓派的RX,RX连接树莓派的TX,VCC与GND正常连接,否则数据无法正常通讯。



这个如果看不懂,就自己了断吧

  


然后串口登录


树莓派默认账号:pi树莓派默认密码:raspberry


这是我们的登录密码和账户。。。emmmm,我以为是自己的。



这就登录上来了



如果这里出现这个,是电压不够,因为我上面是USB转TTL上面的5V直接PI,后面就报错了。



Micro USB接电源,串口通信,USB接我的手机,USB网卡的作用



如果你接了电源就接三个就行,GND TX RX GND是基准电压



这是USB的网卡连接上了



我能被这帮人笑死


https://elinux.org/RPi_Serial_Connectio


这个是一个树莓派的WIKI,写的真好。


https://www.raspberrypi.com/documentation/computers/raspberry-pi.html


各个版本的原理图什么的,高清PDF,emmmmm,大家这个获取消息的方式,元谋人一样。。。




看看我们的主角



电源的原理图



看看引脚的电源和串口啥的,还有3V3



这是芯片的引脚吗?



这是HDMI的脚



文档的图绘制的真好


这里开始讲影像系统了,我其实很麻烦这个事情,其实计算机之初是算东西的,是真真正正的计算机,不知道为什么最近几年计算机视觉这股歪风这么强,忘了计算机本来的路。


虽然图形学也是计算,但是这种计算不会帮助我们的科技有着本质的发展。我们应该研究算法,高效的存储结构,强大的微分求解系统等。


这次新系统的更新,就是把ISP这块换成了开源的实现。



V2的相机


Raspberry Pi Camera Module 2 于 2016 年 4 月取代了原来的 Camera Module。

v2 Camera Module 有一个 Sony IMX219 8 兆像素传感器(与原始相机的 5 兆像素 OmniVision OV5647 传感器相比)。



还有个更贵的。。。买不起?



黑,粗,硬!


安装的装配图



这是几个相机得模组得比较,其实20快得500w摄像头性价比高



这个是以前的处理相机这块的应用包



这是新的


libcamera是一个新的软件库,旨在直接从 Linux 操作系统支持复杂的相机系统。就 Raspberry Pi 而言,它使我们能够直接从运行在 ARM 处理器上的开源代码驱动相机系统。在 Broadcom GPU 上运行且用户根本无法访问的专有代码几乎完全被绕过。拍手手,你不给我看,我就不用你的,嘤嘤嘤!

超大声:


你听见我嘤嘤嘤没有!!!死聋子!!!


libcamera向应用程序提供 C++ API,并在配置相机的级别工作,然后允许应用程序请求图像帧。这些图像缓冲区驻留在系统内存中,可以直接传递给静态图像编码器(例如 JPEG)或视频编码器(例如 h.264),尽管诸如编码图像或显示图像之类的辅助功能严格超出其libcamera自身的范围.

为此,Raspberry Pi 提供了一小部分示例libcamera-apps这些是简单的应用程序,构建在之上libcamera,主要旨在模拟构建在 Broadcom 专有 GPU 代码上的遗留堆栈的功能(一些用户会将这些遗留应用程序识别为raspstillraspivid)。提供的应用程序是:

  • libcamera-hello一个简单的“hello world”应用程序,它启动相机预览流并将其显示在屏幕上。

  • libcamera-jpeg一个简单的应用程序,用于运行预览窗口然后捕获高分辨率静止图像。

  • libcamera-still一个更复杂的静态图像捕捉应用程序,它模拟了raspistill.

  • libcamera-vid一个视频捕捉应用程序。

  • libcamera-raw直接从传感器捕获原始(未处理的拜耳)帧的基本应用程序。

  • libcamera-detect这个应用程序不是默认构建的,但如果用户在他们的 Pi 上安装了 TensorFlow Lite,就可以构建它。当检测到某些对象时,它会捕获 JPEG 图像。

Raspberry Pilibcamera-apps不仅是命令行应用程序,可以轻松地从相机捕获图像和视频,它们也是用户如何创建自己的基于 libcamera 的应用程序的示例,该应用程序具有自定义功能以满足自己的要求。


一个识别的例子


https://github.com/raspberrypi/libcamera-apps


demo的位置


https://libcamera.org/


官网



libcamera 是适用于许多平台的开源相机堆栈,具有核心用户空间库,并支持 Linux 内核 API 和已经到位的驱动程序。


它旨在通过提供直观的 API 和将不受信任的供应商代码与开源核心分离的方法来控制嵌入式相机硬件的复杂性。


libcamera 旨在通过限制开发人员必须处理的复杂性来鼓励开发新的嵌入式相机应用程序。该界面是围绕现代嵌入式相机硬件的工作方式设计的。



这个框架现在来说只是支持这些平台




咸鱼150,啥板子啊,性价比还挺高


git clone https://git.libcamera.org/libcamera/libcamera.gitcd libcamerameson buildninja -C build install


ninja的构建



缺东西了



编译的话,哪有这么容易,找个黄道吉日,老夫沐浴焚香再来安装。(PS:众所周知,配置环境最难)



我今年要申请一下



这是其中的一个任务



又一个


https://libcamera.org/docs.html


libcamera 相机的文档



目前我的一堆做实验的东西


libcamera内核之下,Raspberry Pi 提供了一个自定义管道处理程序,该层libcamera用于驱动 Raspberry Pi 本身上的传感器和 ISP(图像信号处理器)。其中的一部分是众所周知的控制算法的集合,或者说是IPA(图像处理算法)libcamera,例如 AEC/AGC(自动曝光/增益控制)、AWB(自动白平衡)、ALSC(自动镜头阴影校正) ) 等等。

所有这些代码都是开源的,现在可以在 Pi 的 ARM 内核上运行。GPU 上只有一层非常薄的代码,用于将 Raspberry Pi 自己的控制参数转换为 Broadcom ISP 的寄存器写入。

Raspberry Pi 的实现libcamera不仅支持三种标准的 Raspberry Pi 摄像头(OV5647 或 V1 摄像头、IMX219 或 V2 摄像头以及 IMX477 或 HQ 摄像头),还支持 IMX290、IMX327、OV9281、IMX378 等第三方传感器。Raspberry Pi 热衷于与希望看到其传感器由libcamera.

帅啊,我的V1摄像头也支持了。

此外,Raspberry Pi为这些传感器中的每一个都提供了一个调整文件,可以对其进行编辑以更改 Pi 硬件对从图像传感器接收到的原始图像执行的处理,包括颜色处理、噪声抑制量或控制算法的行为。


关于这个适配层的说明:


https://datasheets.raspberrypi.com/camera/raspberry-pi-camera-guide.pdf



有专门一个文档说这个




这是我们的处理框图



算法使用的框架图



看文档啊,一开始是闭源的一些驱动:


https://downloads.raspberrypi.org/raspios_armhf/images/raspios_armhf-2021-05-28/


这些是以前版本的ZIP文件


https://www.raspberrypi.com/news/raspberry-pi-os-debian-bullseye/


这个全新的影像系统是2021年11月8日发布的,Bullseye



是玩具总动员伍迪的马,真难看啊



文章里面也重点的说了这个问题


https://www.raspberrypi.com/software/operating-systems/


在这里下载



全线更新了


https://forums.raspberrypi.com/viewtopic.php?f=43&t=322076


这是关于这个影像系统的更改

为什么要使用libcamera-apps

我们鼓励用户转向 Bullseye,因为libcamera-apps带来了许多好处:

  • 它们提供了改进的图像质量,此外,用户可以根据自己的喜好进行调整。

  • 我们可以修复错误并开发新功能——所有这些在专有的 Broadcom 堆栈中都是非常困难的。例如,我们很高兴在不久的将来计划自动对焦功能。

  • 因为它是开源的,第三方也可以修复问题并添加新功能——我们很高兴在Github 存储库中考虑拉取请求(对内核或libcamera本身的贡献需要以通常的方式上传。)

    https://github.com/raspberrypi/libcamera-apps
  • 添加对新相机和第三方相机的支持要容易得多 - 已经支持了一些(包括 Sony imx290imx327imx378以及 Omnivision ov9281)。

  • 我们热衷于与供应商合作,更多供应商已经在筹备中。

  • 这些应用程序的设计易于理解,以便用户可以自定义它们以满足自己的要求。

  • 我们展示了如何使用强大的第三方图像处理库来增强相机应用程序,例如OpenCVTensorFlow Lite

  • 我们提供了一个图像后处理框架,其中包括运动检测、HDR(高动态范围)成像、面部和物体检测、姿势估计和图像分割的示例。如果用户愿意贡献更多,我们会很高兴!

  • 64 位版本的 Raspberry Pi OS 完全支持它。

尽管如此,libcamera和 Raspberry Pi 的libcamera-apps 仍在开发中。继续使用较旧的操作系统版本并继续使用旧版相机系统的原因包括:

  • 目前还没有 Python 接口。旧的Picamera的替代品,富有想象力地命名为Picamera2,正在开发中。这也将更直接地与已建立的 Python 库集成,以访问诸如窗口和图形功能之类的东西。Picamera2将由 Raspberry Pi 开发(与Picamera本身不同,它实际上是第三方代码),这将有助于支持和持续的未来开发。

  • 目前在libcamera 中不支持立体成像,但它在我们未来的开发计划中。

  • 希望同时使用 X Windows 的低功耗 Raspberry Pis(例如 Zero)用户可能会通过传统堆栈获得更好的相机性能,因为这在 GPU 上做的工作更多,而在 ARM 内核上做的工作更少(这可能会很困难)在任何情况下都使用 X Windows)。请注意,当 X Windows 未运行或不需要实时视频窗口时libcamera-apps在这些系统上仍能正常工作。


看大家都在吐槽,没有Python的接口,这,看来C++/C这个东西确实是一种过滤器。


picamera源码阅读.1(安装文件详解),我也写过哦~



我们看看树莓派给的demo,写了啥,夸了这么久。



第一个我就不认识了,说实话,这个C++真的很叼,值得花时间去学。



如果,我说如果,C++能这么骚,我也会不舍昼夜的学



但是大多数的时候,我看C++都是这个心情,真的是太形象了


chrono是C++11新加入的方便时间日期操作的标准库,它既是相应的头文件名称,也是std命名空间下的一个子命名空间,所有时间日期相关定义均在std::chrono命名空间下。通过这个新的标准库,可以非常方便进行时间日期相关操作。

chrono库主要包含了三种类型:duration, time_point 和 clock。


看了一圈,感觉先看看API是个正经活:


https://libcamera.org/api-html/index.html#api


libcamera 充当应用程序和相机硬件之间的中间件。它为一个无法解决的问题提供了解决方案:协调需要在不同系统上运行而无需处理特定于设备的细节的应用程序,以及具有多种功能、局限性和架构变化的相机硬件。


为此,它创建了一个抽象的相机模型,对应用程序隐藏了相机硬件。该模型旨在在通用性、取悦通用应用程序和灵活性之间取得适当的平衡,以将最具体的硬件功能暴露给最苛刻的应用程序。


在 libcamera 中,相机被定义为可以从相机传感器连续捕获帧并将它们存储在内存中的设备。如果设备支持并且应用程序需要,相机可以将每个捕获的帧存储在多个副本中,可能以不同的格式和大小。相机的这些内存输出中的每一个都称为流。


一个相机包含单个图像源,而单独的相机实例与不同的图像源相关。例如,一部包含前后图像传感器的手机将使用两个摄像头建模,每个传感器一个。当可以从同一个图像源产生多个流时,所有这些流都保证是同一台相机的一部分。

虽然不共享图像源,但单独的摄像机可以共享其他系统资源,例如 ISP。由于这个原因,相机实例可能不是完全独立的,在这种情况下可能会应用使用限制。例如,带有前置和后置摄像头的手机可能不允许同时使用两个摄像头。


相机模型定义了一个隐式管道,其输入是相机传感器,其输出是流。沿着管道,由相机传感器生成的帧由相机转换为适合应用程序的格式,图像处理可提高捕获帧的质量。相机公开了一组控件,应用程序可以使用这些控件来手动控制处理步骤。这种高级相机模型是所有相机必须符合的最低基线。


其实哇,这个东西有点像一个开源的ISP,这个东西小米,OPPO啥的在做芯片,其实和这个东西差不多。


等等,等等,靓仔等等:



你不对这;


感兴趣?


但凡一个C++的库,到处都是这东西。


https://www.doxygen.nl/index.html



追求?能有啥追求,毕竟连个mian入口都找不到,我的人生还有什么乐趣


对于程序,你先关注,实现和接口;


  • .h文件代表模块对外的接口最小信息,面向模块使用者

  • .c文件代表模块的实现代码,面向的是开发者


捕捉这块,使用的是V4L2,至于42是啥,你换成英文就知道了,for,to。


https://work-blog.readthedocs.io/en/latest/v4l2%20intro.html


抱歉,写到自己不想写了,源码这段明天读。



评论
  • “金字招牌”的户外叙事。2024年的夏天似乎异常炙热,体育迷们的心跳也随之澎湃,全球瞩目的体育盛宴——巴黎奥运会在此刻上映。在这个充满荣耀与梦想的夏天,我们见证了无数激动人心的瞬间:男子4X100米混合泳接力决赛中,潘展乐的最后一棒,气壮山河,中国队的历史性夺冠,让整个泳池沸腾;射击10米气步枪混合团体决赛,黄雨婷和盛李豪的精准射击,为中国队射落首金,展现了年轻一代的力量;乒乓球男单四分之一比赛中,樊振东的惊天逆转令人难以忘怀,凭借坚韧不拔的意志和卓越的技术,成功挺进半决赛,并最终夺冠……在这一
    艾迈斯欧司朗 2024-12-25 19:30 52浏览
  • 今年AI技术的话题不断,随着相关应用服务的陆续推出,AI的趋势已经是一个明确的趋势及方向,这也连带使得AI服务器的出货量开始加速成长。AI服务器因为有着极高的运算效能,伴随而来的即是大量的热能产生,因此散热效能便成为一个格外重要的议题。其实不只AI服务器有着散热的问题,随着Intel及AMD 的CPU规格也不断地在提升,非AI应用的服务器的散热问题也是不容小觑的潜在问题。即便如此,由于目前的液冷技术仍有许多待克服的地方,例如像是建置成本昂贵,机壳、轨道、水路、数据中心等项目都得重新设计来过,维修
    百佳泰测试实验室 2024-12-26 16:33 16浏览
  • 引言  LIN(Local Interconnect Network)是一种针对汽车电子系统应用的串行通信协议,主要用于汽车电子控制单元(ECU)之间的通信。LIN总线的特点是成本低、速率低、通信距离短、连接节点少,主要用于对带块要求低、实时性要求不高的控制任务,例如车门控制、天窗控制、座椅控制、车内照明等功能。LIN总线采用的是主从式架构,由主节点基于调度表调度网络中的通信。  LIN总线的错误类型  尽管LIN协议设计简单,具有低带
    北汇信息 2024-12-25 14:18 41浏览
  • 本文介绍瑞芯微RK3588主板/开发板Android12系统下,APK签名文件生成方法。触觉智能EVB3588开发板演示,搭载了瑞芯微RK3588芯片,该开发板是核心板加底板设计,音视频接口、通信接口等各类接口一应俱全,可帮助企业提高产品开发效率,缩短上市时间,降低成本和设计风险。工具准备下载Keytool-ImportKeyPair工具在源码:build/target/product/security/系统初始签名文件目录中,将以下三个文件拷贝出来:platform.pem;platform.
    Industio_触觉智能 2024-12-26 09:19 74浏览
  • 在谐振器(无源晶振)S&A250B测试软件中,DLD1到DLD7主要用于分析晶体在不同驱动功率下的阻抗变化。此外,还有其他DLD参数用于反映晶振的磁滞现象,以及其频率和功率特性。这些参数可以帮助工程师全面了解KOAN晶振在不同功率条件下的动态特性,从而优化其应用和性能。磁滞现象晶振的磁滞现象(Hysteresis)是指在驱动功率变化时,晶体的阻抗或频率无法立即恢复至初始状态,而表现出滞后效应。1. DLDH: Hysteresis Ratio (MaxR/MinR)在不同驱动
    koan-xtal 2024-12-26 12:41 52浏览
  • 概述 Intel 要求用户为其10代FPGA器件使用特定的上电和掉电顺序,这就要求用户在进行FPGA硬件设计的时候必须选择恰当的FPGA供电方案,并合理控制完整的供电上电顺序。经过在Cyclone 10 GX测试板上实际验证,统一上电确实会导致FPGA无法正常工作,具体表现为JTAG接口无法探测或识别到目标器件。上电顺序要求 Cyclone 10 GX,Arria 10以及Stratix 10系列器件所有的电源轨被划分成了三个组合,三组电源轨要求依次上电,如图1所示,为三组电源轨上电顺序示意图。
    coyoo 2024-12-25 14:13 37浏览
  • 本文介绍瑞芯微开发板/主板Android系统APK签名文件使用方法,触觉智能EVB3588开发板演示,搭载了瑞芯微RK3588芯片,各类接口一应俱全,帮助企业提高产品开发效率,缩短上市时间,降低成本和设计风险。系统签名文件生成APK系统签名文件,具体可参考此文章方法RK3588主板/开发板Android12系统APK签名文件生成方法,干货满满使用方法第一步,修改APK工程文件app/src/build.gradle,并添加以下内容: android {     na
    Industio_触觉智能 2024-12-26 09:20 52浏览
  • 据IDTechEx最新预计,到2034年,全球汽车舱内传感(In-Cabin Sensing,ICS)市场将超过85亿美元。若按照增长幅度来看,包含驾驶员监控系统(DMS)、乘员监控系统(OMS)、手势控制和生命体征监测等高级功能在内的舱内传感市场预计2020年到2034年将增长11倍。感光百科:ICS中的光源选择01、政策推动带来的“硬”增长作为其中的增长主力,舱内监控系统应用(包含DMS和OMS等)被推动增长的首要因素正是法规。据统计,中国、欧盟、美国、韩国、印度等主要汽车国家或地区已推出相
    艾迈斯欧司朗 2024-12-25 19:56 50浏览
  • 新能源汽车市场潮起潮落,只有潮水退去,才能看清谁在裸泳。十年前,一批新能源汽车新势力带着创新的理念和先进的技术,如雨后春笋般涌入中国汽车市场,掀起一场新旧势力的角逐。经历市场的激烈洗礼与投资泡沫的挤压,蔚来、理想、小鹏等新势力车企脱颖而出,刷爆网络。不曾想,今年新势力车企杀出一匹“超级黑马”,爬上新势力车企销量榜前三,将蔚来、小鹏等昔日强者甩在了身后,它就是零跑汽车。公开数据显示,11月份,零跑汽车实现新车交付量约4.02万辆,同比增长117%,单月销量首次突破4万辆;小鹏汽车当月共交付新车约3
    刘旷 2024-12-26 10:53 79浏览
  • RK3506是瑞芯微Rockchip在2024年第四季度全新推出的Arm嵌入式芯片平台,三核Cortex-A7+单核Cortex-M0多核异构设计,CPU频率达1.5Ghz, M0 MCU为200Mhz。RK3506平台各型号芯片该怎么选,看这篇文章就够了。RK3506各型号RK3506有3个型号,分别是RK3506G2、RK3506B、RK3506J,配置参数如图: 配置差异解析总的来说,RK3506各型号间的差异主要体现在内存、工作温度和封装上‌:内存差异‌:RK3506G2‌集成
    Industio_触觉智能 2024-12-25 10:27 16浏览
  • 全球照明技术创新领航者艾迈斯欧司朗,于2024年广州国际照明展览会同期,举办【智慧之光】· 艾迈斯欧司朗-照明应用研讨会,以持续的技术创新,推动光+概念的全面落地。现场还演示了多款领先照明技术,且由资深工程师倾情解读,另有行业大咖深度洞察分享,助你开启“光的无限可能”探索之旅!精彩大咖分享引领未来照明无限遐想艾迈斯欧司朗精心准备了照明领域专业大咖的深度分享,无论是照明领域的资深从业者,还是对照明科技充满好奇的探索者,在这里,您都将大有所获。在艾迈斯欧司朗照明全球产品市场VP Geral
    艾迈斯欧司朗 2024-12-25 20:05 44浏览
  • 在PCB设计中,Stub(也称为短桩线或残桩线)对信号传输有以下几个主要影响:1.容性效应导致的阻抗偏低:Stub会导致容性效应,使得阻抗偏低,影响信道的阻抗一致性。Stub越长,阻抗降低得越多。这是因为传输线瞬态阻抗计算公式为:Z = \ sqrt { \ frac { L } { C } }Stub就像并联在传输线上的小电容,Stub越长,电容量越大,阻抗也就越低。2.信号反射:当信号在传输线与Stub的交界处遇到阻抗不匹配时,会产生信号反射。这会导致信号的失真和能量的反向传播,增加了噪声和
    为昕科技 2024-12-24 18:10 15浏览
  • 当下,智能手机市场正呈现出明显的高端化趋势,更多消费者愿意为高端设备买单,这也推动了智能手机均价的提升。作为中国科技品牌出海的代表,传音控股凭借在折叠屏手机、AI技术、多肤色影像技术等方面的优势,在全球高端手机市场上展现出强大的竞争力。智能手机高端化趋势明显,传音打造AI技术优势12月初,全球市场调研机构Counterpoint发布报告称,2024年三季度,全球智能手机市场出货量达3.07亿部,同比增长2%,连续四个季度保持增长。全球智能手机收入同比增长10%,平均售价增长7%,均创下历史新高。
    电子资讯报 2024-12-24 16:57 20浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦