工业相机与镜头参数及选型

news2024/12/23 12:37:52

文章目录

  • 1、相机成像系统模型
    • 1.1 视场
    • 1.2 成像简化模型
  • 2、工业相机参数
    • 2.1 分辨率
    • 2.2 靶面尺寸
    • 2.3 像元尺寸
    • 2.4 帧率/行频
    • 2.5 像素深度
    • 2.6 动态范围
    • 2.7 信噪比
    • 2.8 曝光时间
    • 2.9 相机接口
  • 3、工业镜头参数
    • 3.1 焦距
    • 3.2 光圈
    • 3.3 景深
    • 3.4 镜头分辨率
    • 3.5 工作距离(Workingdistance,WD)
    • 3.6 视野范围(Field of View,FOV)
    • 3.7 光学放大倍数(Magnification,b)
  • 4、工业相机与镜头选型
    • 4.1 相机分辨率的选择
    • 4.2 相机与镜头分辨率的选择
    • 4.3 镜头其他参数的选择
    • 4.4 相机其他参数的选择
  • 5、线激光器选型

1、相机成像系统模型

1.1 视场

视场(Field of View,FOV)指成像系统中图像传感器可以监测到的最大区域。在机器视觉系统设计时,考虑到一般都会使被检测目标尽量填满整视场,因此常用视场大小代替目标的最大长度Lmax来计算视觉系统的像素分辨率。
在这里插入图片描述
如果横纵方向上视场大小为[FOVh,FOVv],检测目标的最小特征的大小为[Ih,lv],则图像传感器应具有的最小像素分辨率为:
R m i n = [ F O V h l h × P m i n , F O V v l v × P m i n ] R_{min}=[\frac{FOV_h}{l_h}\times P_{min},\frac{FOV_v}{l_v}\times P_{min} ] Rmin=[lhFOVh×Pmin,lvFOVv×Pmin]

  • P m i n : 最小特征的像素数 P_{min}:最小特征的像素数 Pmin:最小特征的像素数
    成像系统视场的大小可以通过研究其成像规律得知。目前,机器视觉系统常用使用配备各种镜头系统的工业CCD/CMOS相机作为成像系统,透镜成像示意图如下所示:
    在这里插入图片描述
    镜头系统一般使用透镜系统,其成像遵循高斯成像公式:

1 f = 1 u + 1 v \frac{1}{f}=\frac{1}{u}+\frac{1}{v} f1=u1+v1

  • f为焦距
  • u为物距
  • v为像距(实正虚负)

通常将像距与物距的比值定义为透镜的放大率M:
M = u v M=\frac{u}{v} M=vu

1.2 成像简化模型

由于对机器视觉成像系统来说,相机镜头到所检测目标的距离(称为工作距离,相当于物距)相对于相机焦距可近似认为是无穷远。若将其带入高斯成像公式,可得出此时相机像距近似等于其焦距,也就是说相机成像在焦平面上。据此,可以将镜头系统抽象为类似小孔成像的简化模型。
小孔成像简化模型
根据该简化模型,可以得出机器视觉系统图像传感器尺寸S(传感器平面某个方向上的长度)、视场FOV、工作距离WD及镜头焦距f之间的约束关系:
S F O V = f W D \frac{S}{FOV}=\frac{f}{WD} FOVS=WDf

2、工业相机参数

2.1 分辨率

分辨率是相机最基本的参数,由相机所采用的芯片分辨率决定,在采集图像时,相机的分辨率对检测精度有很大的影响,在对同样大的视场(景物范围)成像时,分辨率越高,对细节的展示越明显。
常用的工业面阵相机分辨率有500万、1200万、6500万等。对于线阵相机而言,分辨率就是传感器水平方向上的像素数,常见有2K、4K、8K、16K等。

2.2 靶面尺寸

英寸和毫米的换算关系是:1英寸(inch) = 25.4 mm。
但是对于一款CMOS成像芯片,虽然标称它的对角线尺寸为1英寸,实际测量只有大约16mm,和25.4mm相差甚远。这是为什么呢?
这实际上是一个历史遗留问题.最早的电视摄像机的核心元件是真空摄像管。那时候的真空摄像管看起来都差不多,它们被封装在圆柱形的玻璃外壳中,最常见的玻璃圆柱的外径尺寸就是1英寸,还有2英寸、3英寸等等。针对这种老式显像管,它真正能够显示的圆面直径只有16mm,远没有1 英寸这么大(要考虑到外壳封装占据的空间)。当时为了相互交流沟通的方便,一般都是以显像管的外径的数值来指代其成像范围,即便后来出现了CCD和CMOS成像芯片,但是这种度量方式却被一直继承了下来。
真空摄像管

所以,在工业相机领域,成像元件中提到的“英寸”这个单位,已经不能按工业标准的1英寸=25.4mm来计算了,而要按 1英寸=16mm 来计算。它严格遵守了Optical Format规范,中文译名为光学格式,其数值称为OF值,单位为英寸。

另外需要说明的是,并不是所有的CMOS芯片都是按照 1英寸=16mm 来计算长度的,这要看CMOS对角线长度来定:只有CMOS对角线长度≥8mm时,才会使用16mm规范,此时1英寸=16mm。比如1/2 的芯片,对应对角线真实尺寸大约是8mm。对于对角线长度小于8mm的CMOS,使用18mm规范,此时1英寸=18mm,比如1/2.55英寸的芯片,其对角线的真实尺寸大约是7mm。

下图为不同画幅的CMOS(或者CCD)的真实尺寸对比。一般来说,如果CMOS尺寸大于2英寸,就不再使用英寸来划分,而是给它取一个特定的名称,比如APS画幅,全画幅,中画幅,大画幅等等。

在这里插入图片描述
在这里插入图片描述

2.3 像元尺寸

像元即影像单元,是组成数字化影像的最小单元。

  • 像元尺寸和像元数(分辨率)共同决定了相机靶面的大小,通常工业相机像元尺寸为2μm~14μm。

像元尺寸从某种程度上反映了芯片的对光的响应能力,一般情况下,像元尺寸越大,能够接收到的光子数量越多,在同样的光照条件和曝光时间内产生的电荷数量越多。
在这里插入图片描述

2.4 帧率/行频

工业相机的最大帧率/行频表示单位时间内相机采集图像的速率。

  • 通常帧率是相对于面阵工业相机来说的,单位是fps,如181fps,即相机每秒内最多可采集181帧图像。
  • 行频是相对于线阵工业相机来说的,单位是kHz,如80kHz,即相机每秒内最多可采集80000行图像数据。

2.5 像素深度

像素深度是指每位像素数据的位数,通常用多少比特位表示。一般,每个像素的比特位数多,表达图像细节的能力强,这个像素的灰阶值更加丰富、分得更细,像素的灰阶深度就更深,但同时数据量也越大,影响系统的图像处理速度,因此也需慎重选择。

2.6 动态范围

动态范围是用来描述每个像素能够分辨出的灰度等级,宽动态范围能够使场景中亮场和暗场部分的细节同时被清晰的记录下来。
动态范围值越大,意味着工业相机可以拍摄物体明暗程度的范围越宽。

2.7 信噪比

工业相机的噪声是指成像过程中不希望被采集到的,实际成像目标之外的信号。
根据欧洲机器视觉协会(EMVA)的EMVA1288标准中定义的相机中的噪声,总体上分为两类:一类是由有效信号带来的散粒噪声,这种噪声对任何相机都是相同的,不可避免;另一类是相机本身固有的与信号无关的噪声,它是由于图像传感器读出电路、相机信号处理与放大电路等带来的噪声,每台相机的固有噪声都不一样。
相机的信噪比定义为图像中信号与噪声的比值(有效信号平均灰度值与噪声均方根的比值),其中信号可以由光强乘以量子效率乘以积分时间来计算,而噪声则指成像过程中所有部分所产生噪声的总和;信噪比越大,则表示混在信号里的杂波越少,图像质量越高,画面越干净,看不到噪波干扰(表现为“颗粒”和“雪花”);若信噪比越小,则画面上可能呈现较多的“颗粒”和“雪花”,影响图像画面质量。

2.8 曝光时间

曝光时间是为了将光投射到照相感光材料的感光面上,快门所要打开的时间;视感光材料的感光度和对感光面上的照度而定;曝光时间长,进光量就越大,适合光线条件较差的情况;曝光时间短则适合光线比较好的情况。

2.9 相机接口

工业相机通常有三个基础的接口,电源接口、数据接口与镜头接口。

  1. 电源接口:顾名思义,用以相机电源输入接口。
  2. 数据接口:按照接口标准不同,工业相机常用的数据接口有GigE、Camera Link、USB3.0、CoaXPress等类型。
  3. 镜头接口:工业相机镜头接口种类很多,常用的一般有C接口、CS接口、F接口、M42接口、M72接口等。
    C接口和CS接口是工业相机与镜头联接最常见的国际标准接口,为1英寸-32UN英制螺纹连接口,C型接口和CS型接口的螺纹连接是一样的,区别在于C型接口的后截距为17.5mm,CS型接口的后截距为12.5mm。所以CS型接口的工业相机可以和C口及CS口的镜头连接使用,只是使用C口镜头时需要加一个5mm的接圈;C型接口的工业相机不能用CS口的镜头。
    在这里插入图片描述

3、工业镜头参数

3.1 焦距

焦距就是从镜头的中心点到胶平面(胶片或CCD)上所形成的清晰影像之间的距离,注意区分相机的焦距与单片凸透镜的焦距是两个概念,因为相机上安装的镜头是多片薄的凸透镜组成,单片凸透镜的焦距是平行光线汇聚到一点,这点到凸透镜中心的距离。焦距的大小决定着视角大小,焦距数值小,视角大,所观察的范围也大;焦距数值大,视角小,观察范围小。
标准镜头的视角约50度左右,这是人单眼在头和眼不转动的情况下所能看到的视角,从标准镜头中观察的感觉与我们平时所见的景物基本相同。
在这里插入图片描述

  • 焦距的计算方法

f = S × W D F O V f = \frac{S \times WD}{FOV} f=FOVS×WD
s:机器视觉系统图像传感器尺寸(传感器平面某个方向上的长度)
FOV:视场
WD:工作距离
f:镜头焦距

3.2 光圈

光圈是一个用来控制光线通过镜头,进入机身内感光面光量的装置。它通常是在镜头内,通过面积可变的孔径光栅来达到控制镜头通光量。
除了调整进光量之外,光圈还有一个重要的作用:调整画面的景深。用F表示,以镜头焦距f和通光孔径D的比值来衡量,每个镜头上都标有最大F值,例如:8mm/F1.4代表最大孔径D为5.7mm(8/1.4),F值越小,光圈越大,F值越大,光圈越小。最佳光圈一般在f/4-f/8。

3.3 景深

景深是指在被摄物体聚焦清楚后,在物体前后一定距离内,其影像仍然清晰的范围。景深随镜头的光圈值、焦距、拍摄距离而变化,光圈越大,景深越小(浅),光圈越小,景深越大(深)。焦距越长,景深越小,焦距越短,景深越大。距离拍摄物体越近时,景深越小,拍摄距离约远,景深越大。
在这里插入图片描述

  • 景深的计算方法
    前景深 Δ L 1 = F δ L 2 f 2 + F δ L 后景深 Δ L 2 = F δ L 2 f 2 − F δ L 景深 Δ L = Δ L 1 + Δ L 2 = 2 f 2 F δ L 2 f 4 − F 2 δ 2 L 2 F : 镜头的拍摄光圈值 δ : 容许弥散圆直径 L : 对焦距离 f : 焦距 \begin{array} {l} 前景深 \Delta L1 = \frac{F \delta L^2}{f^2 + F \delta L} \\ \\ 后景深 \Delta L2 = \frac{F \delta L^2}{f^2 - F \delta L} \\ \\ 景深 \Delta L = \Delta L1 + \Delta L2 = \frac{2f^2F \delta L^2}{f^4 - F^2 \delta^2 L^2} \\ \\ F:镜头的拍摄光圈值 \\ \delta : 容许弥散圆直径 \\ L:对焦距离 \\ f:焦距 \\ \end{array} 前景深ΔL1=f2+FδLFδL2后景深ΔL2=f2FδLFδL2景深ΔL=ΔL1+ΔL2=f4F2δ2L22f2FδL2F:镜头的拍摄光圈值δ:容许弥散圆直径L:对焦距离f:焦距

3.4 镜头分辨率

分辨率代表镜头记录物体细节的能力,是指在成像平面上 1 毫米间距内能分辨开的黑白相间的线条对数,单位是“线对/毫米”( lp/mm,line-pairs/mm ),线对是指黑白相间的两条线,即两个像素点,分辨率越高的成像越清晰。我们常说的显示分辨率是屏幕图像的精密度,指图形所能显示像素有多少。
由于像素和像素之间的间距形成了离散采样。采样定律也叫Shannon采样定律,告诉我们对于频率为f的模拟信号,为了不失真的恢复它,我们至少要用2f的频率来采样。两个相机感光元才能对应黑和白一个线对。
在这里插入图片描述

  • 像元尺寸
    最小能分辨的尺寸是线对数的2倍倒数。最小能分辨的尺寸即像元尺寸,指单个像素的大小或两个像素中心点之间的距离,单位mm或um等,不同规格相机规定单位不同。
    例如:镜头为5百万像素、靶面尺寸为1/1.8”,分辨率为200 lp/mm,最小能分辨的尺寸是 1/(200*2)=0.0025mm,即像元尺寸为2.5um。

3.5 工作距离(Workingdistance,WD)

镜头第一个工作面到被测物体距离。

3.6 视野范围(Field of View,FOV)

相机实际拍摄到的区域尺寸,视场角分物方视场角和像方视场角。一般光学设备的使用者关心的是物方视场角。对于大多数光学仪器,视场角的度量都是以成像物的直径作为视场角计算的。如:望远镜、显微镜等。而对于照相机、摄像机类的光学设备,由于其感光面是矩形的,因此常以矩形感光面对角线的成像物直径计算视场角。也有以矩形的长边尺寸计算视场角的。
在这里插入图片描述
视场角与焦距的关系:一般情况下,视场角越大,焦距就越短。

3.7 光学放大倍数(Magnification,b)

CCD/FOV,即芯片尺寸除以视野范围。

4、工业相机与镜头选型

数字图像是对成像系统输出的信号进行数字化后的结果,成像系统反映真实场景的性能和质量直接决定整个机器视觉系统的性能。
影响机器视觉成像系统成像质量的因素主要包括:光源(Illumination)、系统分辨率(System Resolution)、像素分辨率(Pixel Resolution)、对比度(Contrast)、景深(Depth of Field,DOF)、投影误差(Perspective Error)和镜头畸变(Lens Distortion)。
而这些因素(参数)却直接或间接地由硬件选型和安装方式决定。如果事先既未确定相机又未确定镜头,则需要先了解项目工作环境对相机安装(工作距离)、要检测的最大范围(视场)、最小特征的尺寸和代表它的像素数的要求,然后根据这些条件来计算应使用何种镜头或相机。
在这里插入图片描述
无论何种情况,都是基于成像系统简化模型的参数约束关系和项目需求获取最优搭配的过程。

4.1 相机分辨率的选择

分辨率的选择,主要根据待测物体的尺寸估算出视野大小,再结合精度要求,最后确定需要的工业相机分辨率。
例如:若物体尺寸为50mm,则视野可以估算为50×1.2=60mm,若单个像素的精度要求为0.02mm,则分辨率为50×1.2/0.02=3K

注意:选择相机不一定是分辨率越高就越好,分辨率高带来的图像数据量就大,后期的算法处理就越复杂。

4.2 相机与镜头分辨率的选择

经透镜成的光学图像,本身是一个拥有无穷多个点的模拟信号。但在图像接收器(CCD或CMOS)接收过程中,由于像素和像素之间的间距形成了离散采样。采样定律也叫Shannon采样定律,告诉我们对于频率为f的模拟信号,为了不失真的恢复它,我们至少要用2f的频率来采样。
所以相机分辨率需要等于镜头分辨率的两倍,才能呈现完好的成像质量,如果大于镜头分辨率的两倍,则造成了相机性能的过剩,反之造成了镜头性能的过剩。然而在实际使用中,由于景深的存在,为了使镜头偏离对准面仍然能够成像清晰,因此,在选择镜头时,通常要求镜头分辨率要略高于像元分辨率,这样才能使系统的分辨率达到传感器所限制的最高分辨率。
所以要用相机分辨率等于镜头分辨率的两倍实际上是要求相机和镜头的像元尺寸相等,而不是像素相等。例如500万像素的相机不一定需要配备500万像素的镜头,而是需要计算像元尺寸,然后进行比较。
一般情况下需要确定工业相机和镜头的分辨率时,镜头的靶面尺寸与相机的靶面尺寸没有完全匹配,此时计算镜头的像元尺寸时应该使用相机的靶面尺寸进行计算从而保证相机的分辨率是镜头分辨率的两倍。
例如1/1.8”靶面C 口5 百万像素工业镜头的镜头分辨率为:200lp/mm。若用于靶面尺寸1/2.9”的工业相机,对应的像素为1987X1490,大于相机的分辨率为1440X1080,这样的工业镜头可以用于工业相机,只是造成镜头的浪费。

4.3 镜头其他参数的选择

影响镜头成像的因素包括:焦距、最大像面、视场/视场角、渐晕、景深等方面。

  • 焦距是指无限远处目标在镜头的像方所成像位置到像方主面的距离。焦距体现了镜头的基本特性:即在不同物距上,目标的成像位置和成像大小由焦距决定。市面上常见的镜头焦距大小包括6mm、8mm、12.5mm、25mm以及50mm等。对机器视觉成像系统来说,工作距离就是成像系统中所说的物距。由于视觉成像系统模型的假定条件是工作距离相对于镜头焦距为无限远,因此一般在镜头的产品参数中都会说明其最小工作距离。当相机在小于该最小工作距离的环境下工作时,就会出现图像失真,影响机器视觉系统的可靠性。
  • 最大像面是指镜头能支持的最大清晰成像范围(常用可观测范围的直径表示),超出这个范围所成的像对比度会降低而且会变得模糊不清。最大像面是由镜头本身的特性决定的,它的大小也限定了镜头可支持的视场的大小。
  • 镜头的视场就是镜头最大像面所对应的观测区域。视场角是视场的另一种表述方法,类似人眼“视角"的意义。视场角等于最大像面对应的目标张角。通常,在远距离成像系统中,例如望远镜、航拍镜头等场合,镜头的成像范围均用视场角来衡量。而近距离成像中,常用实际物面的直径(即幅面)来表示。
    在这里插入图片描述
    t a n ω = S / 2 f S 为相机传感器在二维平面上某个维度的大小; f : 焦距 2 ω : 视场角 tan \omega = \frac{S/2}{f} \\ \\ \begin{aligned} &S为相机传感器在二维平面上某个维度的大小;\\ &f:焦距 \\ &2\omega :视场角 \end{aligned} tanω=fS/2S为相机传感器在二维平面上某个维度的大小;f:焦距2ω:视场角

由于相机传感器尺寸固定,因此视场角也可以被看作焦距的另一种表达。因此在生活中,人们常按照镜头的视场角对其进行分类,如望远镜(6-12°)、远距摄像镜头(120-46°) .标准镜头(46-65°)、广角镜头(650~100°)及超广角镜头( >100°)等。
一般来说,镜头的失真会随着焦距的减小(或视场角的增大)而增大,因而在构建机器视觉系统(特别是精确测量系统)时,一般都不会选择焦距小于8mm或视场角很大的镜头。
鉴于镜头能清楚成像的范围受到最大像面的限制,因此在为相机选配镜头时,要特别注意相机传感器与镜头可支持最大传感器之间的关系。
一般来说,必须确保所选镜头可支持的最大传感器尺寸大于或等于相机的传感器尺寸。这样做的另一个主要原因是为了避免渐晕(Vignetting)现象的发生。
在这里插入图片描述

  • 普通镜头和远心镜头
    普通镜头与人眼一样,观测物体时都存在"近大远小”的现象,如下图 (a)所示。也就是说,虽然物体在景深范围内可以清晰成像,但是其成像却随着物距增大而缩小。如果被测目标不在同一物面上(如有厚度的物体),则会导致图像中的物体变形。另一方面,相机传感器的感光面通常并不容易被精确调整到与镜头的像平面重合(调焦不准),由此也会产生误差。为此,人们设计了远心镜头。
    远心镜头(telecentric lens)有较大的景深,且可以保证景深范围内任何物距都有一致的图像放大率。多数机器视觉在测量、缺陷检测或者定位等应用上,对物体成像的放大倍率没有严格要求,一般只要选用畸变较小的镜头,就可以满足要求。但是,当机器视觉系统需要检测三维目标(或检测目标不完全在同一物面上)时,就需要使用远心镜头。

4.4 相机其他参数的选择

抛开镜头差别,拍照画质与传感器大小成正比。

  • CCD/CMOS
    CMOS图像传感器的光电转换原理与CCD图像传感器相同,二者的主要差异在于电荷的转移方式上。CCD图像传感器中的电荷会被逐行转移到水平移位寄存器,经放大器放大后输出。由于电荷是从寄存器中逐位连续输出的,因此放大后输出的信号为模拟信号。在CMOS传感器中,每个光敏元的电荷都会立即被与之邻接的一个放大器放大,再以类似内存寻址的方式输出,如下图所示:
    在这里插入图片描述
    因此CMOS芯片输出的是离散的数字信号,之所以采用两种不同的电荷传递方式,是因为CCD是在半导体单晶硅材料上集成的,而CMOS则是在金属氧化物半导体材料上集成的,工艺上的不同使得CCD能保证电荷在转移时不会失真,而CMOS则会使电荷在传送距离较长时产生噪声,因此使用CMOS时,必须先对信号放大再整合输出。

5、线激光器选型

选择机器视觉用线激光器需要考虑的因素有:

  1. 颜色/波段
  2. 功率要求
  3. 调制模式要求
  4. 聚焦位置(F)
  5. 聚焦位置下的激光线长度(L)
  6. 最远工作距离(D2)
  7. 最近工作距离(D1)
  8. 激光图案
  9. 是否需要激光亮度可调
  10. 需要在整个景深范围内光线的粗细一致性好还是需要,在某处最细就好

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1403209.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大模型笔记【3】 gem5 运行模型框架LLama

一 LLama.cpp LLama.cpp 支持x86,arm,gpu的编译。 1. github 下载llama.cpp https://github.com/ggerganov/llama.cpp.git 2. gem5支持arm架构比较好,所以我们使用编译LLama.cpp。 以下是我对Makefile的修改 开始编译: make UNAME…

详解SpringCloud微服务技术栈:DockerCompose部署微服务集群

👨‍🎓作者简介:一位大四、研0学生,正在努力准备大四暑假的实习 🌌上期文章:详解SpringCloud微服务技术栈:Gateway网关(断言、过滤器、跨域问题) 📚订阅专栏&…

【.NET Core】多线程之线程池(ThreadPool)详解(二)

【.NET Core】多线程之线程池(ThreadPool)详解(二) 在上一篇《【.NET Core】多线程之线程池(ThreadPool)详解(一)》中我们详细讲解了,线程池概念,如何应用及…

测试C#调用OpenCvSharp和ViewFaceCore从摄像头中识别人脸

学习了基于OpenCvSharp获取摄像头数据,同时学习了基于ViewFaceCore的人脸识别用法,将这两者结合即是从摄像头中识别人脸。本文测试测试C#调用OpenCvSharp和ViewFaceCore从摄像头中识别人脸,并进行人脸红框标记。   新建Winform项目&#xf…

白盒测试?看这一篇就够了

白盒测试?看这一篇就够了 什么是白盒测试:白盒测试流程白盒测试技术白色测试分 2 个步骤进行白盒测试的特点白盒测试的优点白盒测试的缺点 五星上将麦克阿瑟曾经说过“在白盒测试面前,黑盒测试就是弟弟“ 什么是白盒测试: 白盒测…

10篇深度学习时间序列预测综述汇总!含金融、医疗、气象等领域应用!

在当今数据驱动的时代,时间序列预测在金融、医疗和气象等领域发挥着关键作用,而深度学习作为人工智能领域的重要分支,为解决时间序列预测问题提供了强大的工具。 为了帮助大家深入理解深度学习时间序列预测,这里整理了10篇深度学习…

springboot配置项动态刷新

文章目录 一,序言二,准备工作1. pom.xml引入组件2. 配置文件示例 三,自定义配置项动态刷新编码实现1. 定义自定义配置项对象2. 添加注解实现启动时自动注入3. 实现yml文件监听以及文件变化处理 四,yaml文件转换为java对象1. 无法使…

Oracle认证 | 甲骨文Oracle认证含金量高吗?

“考证”在各行各业中一直都是热度不减的话题,IT领域也不例外。 对于在校学生来说,并没有太多实践经验,证书在一定程度上就是找工作时的“敲门砖”,多张证书多条路; 对于职场人士来说,证书在升职加薪、跳…

基于springboot+vue的网上购物商城(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目背景…

【设计模式】张一鸣笔记:责任链接模式怎么用?

我将通过一个贴近现实的故事——请假审批流程,带你了解和掌握责任链模式。 什么是责任链模式? 责任链模式是一种行为设计模式,它让你可以避免将请求的发送者与接收者耦合在一起,让多个对象都有处理请求的机会将这个对象连成一条…

【架构师专题】架构师如何做好业务架构?

作为一个优秀的架构师,必须要先训练自己的业务架构技能,但是要训练之前,一定要先理解“业务架构”的定义。 业务架构 那么什么是业务架构呢?这里我给大家梳理了一个比较准确的定义。 “业务架构”是一个企业或组织在运营过程中…

大模型日报-20240122

清华、小米、华为、 vivo、理想等多机构联合综述,首提个人LLM智能体、划分5级智能水平 https://mp.weixin.qq.com/s/JYB4BzsXhWF8pEUUkvn_GQ 想必这些唤醒词中至少有一个曾被你的嘴发出并成功呼唤出了一个能给你导航、讲笑话、添加日程、设置闹钟、拨打电话的智能个…

gradle构建spring-framework源码

5.3.22版本构建 通过启动的jvm参数配置代理下载 Could not download jruby-stdlib-9.2.20.1.jar (org.jruby:jruby-stdlib:9.2.20.1) Could not get resource https://repo.maven.apache.org/maven2/org/jruby/jruby-stdlib/9.2.20.1/jruby-stdlib-9.2.20.1.jar. Could not GE…

Vue3组件库开发 之Button(2) 未完待续

Vue3组件库开发 之Button(1) 中新建项目,但未安装成功ESLINT 安装ESLINT npm install eslint vite-plugin-eslint --save-dev 安装eslint后,组件文件出现错误提示 添加第三方macros ,虽然不是官网但很多开发者都是vue3开发人员 安装macros…

SAP CDS VIEW实现行列转换

需求: 销售订单上的业务伙伴数据都在VBPA存储,根据PARVW来区分是售达方或者是送达方等等,有时候一些报表取数时有一些条件,比如售达方等于xxxxx并且送达方等于xxxxx,这时候就不是简单的一条sql就能搞定的事了&#xf…

基于扩散模型语音驱动人物头像说话模型:DreamTalk

1 DreamTalk介绍 DreamTalk:由清华大学、阿里巴巴和华中科大共同开发的一个基于扩散模型让人物头像说话的框架。 能够根据音频让人物头像照片说话、唱歌并保持嘴唇的同步和模仿表情变化。这一框架具有以下特点: DreamTalk能够生成高质量的动画,使人物脸…

前端转鸿蒙的就业前景如何?有必要学鸿蒙么?

学习鸿蒙开发是否有必要,取决于多个因素: 一、个人兴趣与职业规划: 如果你对华为鸿蒙操作系统(HarmonyOS)感兴趣,并且希望将这个平台作为你的职业发展的方向,那么学习鸿蒙开发是非常有意义的。…

ORA-01033: ORACLE initialization or shutdown in progress---惜分飞

客户反馈数据库使用plsql dev登录报ORA-01033: ORACLE initialization or shutdown in progress的错误 出现该错误一般是由于数据库没有正常open成功,查看oracle 告警日志发现 Mon Jan 22 16:55:50 2024 Database mounted in Exclusive Mode Lost write protection disabled …

93. 复原 IP 地址 - 力扣(LeetCode)

题目描述 有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 ‘.’ 分隔。 例如:“0.1.2.201” 和 “192.168.1.1” 是 有效 IP 地址,但是 “0.011.255.245”、“…

【Linux】vim中批量化注释

批量化注释 ctrlvhjkl进行区域选择shiftiI“//”esc*2 批量化删除注释 ctrlvhjkl进行区域选择(包含且仅包含“//”-可以用L控制)d删除