机器视觉系统设计:视觉系统中的成像基准

开发视觉系统的一个重要活动是验证其部署是否符合工程规范。一个成功的视觉应用程序的两个特点是它无需工程师干涉情况下正常工作了多长时间,以及它的维护和复制部署是多么简易。实现所有如上所述目标的一个关键步骤是确定视觉系统的基准。

在这里使用的上下文中,基准是对所需系统特性的度量或指示。在本文的范围内,有两个领域应加以基准:

  • 成像(相机和镜头)

  • 光照

其中,我们通过视觉软件获取和存储图像后,可对图像基准项目进行离线分析。

视觉系统首次开发时,视觉工程师进行测试,以确保组件按预期执行。这些测试帮助视觉工程师建立系统基准,以验证视觉系统在准备调试时的性能,并供今后参考。

当视觉系统进行维护时,技术人员可以重新检查系统基准项目,并将它们与既定的基准进行比较。这使技术人员能够确定是否发生了重大变化,以及在哪里发生了这些变化,因此在必要时采取了适当的纠正措施。它还避免了技术人员盲目变化系统配置,导致的一系列系统功能退化。如果没有基准,即使是经验丰富的视觉工程师也无法确保视觉系统恢复到原来的运行状态。

基准测试确实需要使用特定的工具,如测试图形。其中一些工具可能是特定于应用程序的,而另一些工具可能更通用。基准测试不是一个便于系统调整或校准的过程;系统的调整和校准必须在基准测试之前执行。由于基准测试不是校准,因此它不需要像校准/测量的任务,严格遵照国际标准的可追溯性,有些工具(如测试图形)可以通过现有技术(例如激光打印机)购买或创建。然而,这些工具必须有适当的材料,避免基准工具在视觉系统的使用寿命内发生变形或改变。维护基准工具是视觉系统团队的额外责任。

最后,对视觉系统进行基准测试不是关于精确的定量数据,而是关于能够很好地确定视觉系统特性的数据,这样,如果这些特性被再现,那么视觉系统的性能可以预期与基准记录时一样好。

我们可以对成像进行基准测试提供以下特征的数据:

  • 关键成像尺寸

  • 相机设置

  • 镜头设置

  • 照明器设置(如果有的话)

  • 影像视野

  • 成像(光学)分辨率

  • 景深

  • 光照强度

  • 照明方向

  • 照明均匀性

  • 颜色

  • 图像失真

  • 图像噪声

    02

    记录系统设置

    视觉系统的设置必须记录下来,作为基准测试的准备。这包括与成像相关的重要机械尺寸,以及所有调整位置和可访问参数。这些值必须是视觉系统生产环境中实际使用的值。 成像包括照明、相机和调整后的镜头,调整到最佳状态。成像基准要求采集和存储未经处理的图像。几乎所有的视觉系统都支持这种功能。

应记录的典型设置有:

  • 光源相对于视野的三维测量位置

  • ·视场到镜头的工作距离

  • ·镜头光圈设置

  • ·镜头聚焦设置

  • ·镜头焦距设置(如果使用变焦或变焦镜头)

  • ·相机增益

  • ·相机曝光时间

  • ·相机帧速率(如适用)

  • ·所有其他可编程摄像头设置,即使出厂默认设置

  • ·照明功率水平(如果可调)

  • 照明脉冲宽度(如果使用脉冲照明)

当使用基准测试来确保再现性时,无论是复制视觉系统还是更换现有视觉系统上的部件,都需要考虑到组件中存在变化的事实。同一品牌和型号的两台相机在灵敏度上会有所不同。这些差异可能需要改变相机的增益、曝光时间或光源的输出。

同一品牌和型号的两个镜头的有效焦距可能略有不同,通常小于3%。有效焦距的变化可能会改变视场的大小。或者视场大小的变化是可容忍的,或者改变相机的工作距离以获得精确的视野。

光源的种类多样,光输出调整各有不同,例如,光源中使用的特定LED组时,可以调整光源控制器,改变驱动电流大小,控制光输出强度,将成像性能恢复到基准状态。

03

基准图像亮度

由于相机的灵敏度不同,光源在光输出强度方面也不同,因此非常希望对图像亮度进行基准测试。图像亮度最好使用在视野中具有示例性的局部图像的灰度直方图来记录,另外,记录具有示例性的局部图像的灰度均值也是一种方法。对于未来的基准测试,如果可以存储和保存相同的零件时,则应使用相同的零件,并保证使其反射率不会降低(例如氧化作用使反射率降低)

在复制系统时,应使新系统的图像亮度与基准系统的直方图相匹配。 

图片

图1-灰度直方图

可能需要视觉工程师来决定是否需要改变照明器输出、摄像机增益或曝光,或接受差异。使用现代机器视觉算法,如果图像的亮度有一定的变化,只要关键像素没有进入饱和(灰度值达到255),性能就可以保持合理的一致性。

应该注意的是,改变镜头的f数,虽然一个非常容易的选择,以获得灰度直方图匹配,但这是不可取的。虽然改变透镜孔径确实会影响镜头的集光功率,从而影响强度直方图,但它也会改变镜头的景深和镜头的分辨率。保持景深和光学分辨率通常比灰度直方图水平的轻微变化更为重要。

对于彩色视觉系统,应该获取和存储三个颜色通道中每个通道的灰度直方图,通常是红色、绿色和蓝色

04

基准视野

本基准记录的两个特征是视场的大小和位置。视场的大小与实际放大率有关,位置与相机/镜头指向有关。

为了对视场进行基准测试,必须将靶标定位在视野的中心。靶标可以是任何有利于观察的东西。它可以像天平一样简单,也可以像校准的靶标一样复杂,也可以是在激光打印机上制作的项目专用靶标。重要的要求是,每次对系统进行基准测试时,目标都可以定位在完全相同的位置。这可能需要对视觉系统设计中的夹具进行一些早期思考。

记录并保存图像以及从标尺或目标读取的尺寸和位置尺寸。

图片

图2-标尺用于评估视场大小

在评估视场尺寸时,请记住,大多数透镜的有效焦距公差在±3%左右。因此,在复制一个视觉系统时,实际视场的大小可能会有微小的差异。

图片

图3-商业测试图样

05

基准光学分辨率

系统级的光学分辨率表征图像中可以分辨的细节。它取决于相机的图像分辨率(像素的行和列)、图像传感器上像元的大小和镜头的光学分辨率。通常光学分辨率是在图像上指定的,但为了应用的目的,分辨率将在最重要的地方评估,即在应用场景中。

光学分辨率定义为在像面处镜头在单位毫米内能够分辨开的黑白相间的条纹对数,如下图所示:

图片

分辨率为1/2d,其中,d为线宽。分辨率的单位为lp/mm(线对/毫米)。

另外,一般使用的分辨率公式:

分辨率(ε)=0.61×λ/N.A.(Reyleigh公式)

λ:使用的波长或辐射(λ=0.55µm用于可见光)

N.A.:物镜数值孔径

在实际工业应用中,系统使用面阵或线阵传感器作为成像器件,因此系统的分辨率通常也会受到成像传感器中像元分辨率的限制。像元分辨率定义为单位毫米内像素单元数的一半,即=1/2p,其中p为像素单元的尺寸大小。例如一个CCD的像元尺寸大小为5×5微米,则像元分辨率则为:=1/(2*0.005)=100(lp/mm)。传感器的像元分辨率限制了系统的最高分辨率,即使镜头的分辨率再高,系统也不可能分辨高于像元分辨率的细节。

在实际使用中,普通镜头分辨率低,即使搭配高像素的相机,最后也只能生成模糊的影像。

基准分辨率的典型技术是将分辨率靶标,如USAF分辨率条形图,放置在中心和所有四个角落。大多数商业分辨率靶标都是为非常高的分辨率而设计的。

图片

图5-USAF分辨率目标的一个版本

有时使用激光打印机制作您自己的项目特定靶标。不过,请记住,激光打印机打印出来后目标尺寸不稳定。然而,打印后的文件将保持尺寸稳定,打印文件应与项目资料一起保存。对于这样一个仅用于基准目的的靶标,只需要三组平行条图形:一个用于预期分辨率,一个用于稍微粗的分辨率(名义上时预期分辨率乘以1.15),一个为稍高的分辨率(名义上是预期分辨率的0.85倍)。由于下面解释的原因,角落上的平行条必须是双向的。

例如,如果您的目标分辨率在现场是4线对/毫米,那么每个暗和白条应该是0.125毫米宽的目标分辨率。对于较粗的条形图,每个暗条和白色条将宽0.144毫米,对于更精细的条形图,每个条将宽0.106毫米。

在视野的中间,通常只需要注意将条形分辨率目标定在一个方向。然而,在视场的角落,有必要记录两个方向的分辨率,一是指向视场中心的条形图(切向方向),二是指向与先前方向呈90度的条形图(径向或矢状方向)。在角落,镜头的分辨率在这两个方向中的每一个都是不同的。

图片

图6-特定于项目的分辨率目标

上图只有三组条形图仅用于验证系统成像是否达到了分辨率,但无法确定成像的极限分辨率。

商业用的靶标,如USAF,有一个广泛的条形图案宽度范围,可以用来寻找极限分辨率。

06

基准景深

在确定景深基准时,不干扰任何成像参数是非常重要的。这包括镜头的焦距、镜头的光圈和相机的高度(镜头工作距离)。

衡量景深的方法有两种:

  • 倾斜的比例尺

  • 目标升高

倾斜的比例尺

倾斜比例尺可以是一把直尺或标尺,与视野成已知角度。图像中刻度表现为锐利聚焦的范围给出了景深范围。虽然通常使用刻度尺,但也可以制作或购买景深测量仪。商用的景深测量仪通常比倾斜标尺或直尺更容易固定到位。

图片

图7-在一个角度上示意景深范围的直尺

升高的工件

在标称工作距离以及所需的景深范围的近和远限制处成像。这通常需要设计和构建夹具,以确保结果的重现性。例如,像实验室升降台这样的东西可以用来将工件垂直移动到所需的高度。

如果在所需景深限制和标称高度下达到所需分辨率,则景深有效。景深有可能远远超出要求的范围。利用升高工件的很难实际测量景深的范围。

图8-景深目标

图片

图片

图9-成像显示景深范围

07

基准照明强度

照明强度可以用两种方法之一来衡量:

  • 使用校准的光度计

  • 使用安装好的相机

使用光度计的优点是测量是校准的(通常±10%)。使用机器视觉系统的相机的优点是,您可确保可重复照明,即使灵敏度因相机而异。对于非常小的视场,例如显微镜,光度计方法可能是不切实际的。

前照明和背光的程序是不同的。

光度计,前照明

测量现场入射光能。光度计的传感器放置在场景的中心,并读出测量的光的值。光度计通常以每平方米入射光能量的lux-流明读取。这种方法的缺点是,对于大多数视觉应用,仪表的传感器只在视场的一小部分中拾取入射光,其读数可能受到光照不均匀性的影响。非常重要的是,基准测试需要提供一种方法来重新固定光传感器;无论是通过夹具还是通过仔细的测量。

光度计方法不适用于非常小的视野,如那些使用显微镜。

光度计,背光

在这种情况下,光度计的传感器就放在相机镜头的正前方。仪表的读数仍以勒克斯为单位;更准确的读数应为坎德拉,但大多数光度计都不支持这种测量读数。

相机,前照明

第二种测量强度的方法是使用视觉系统的相机。相机不是经过校准的传感器-两个相同品牌和型号的相机将具有不同的灵敏度。所以测量是相对的。然而,目标是获得正确的曝光;因此,使用视觉系统的摄像机进行测量实现一部分目的——知道成像设置满足其要求。但是,它不能保证成像设置可以被复制。请参阅上面的“图像亮度基准”。

最好用均匀反射的靶标覆盖视野。对于大多数照明方法,这个靶标应该是漫反射的。一些有用材料的例子是照相灰卡(一面反射18%,另一面反射90%)。对于非常大的视野,可能有必要借助于纸张或布料的背景,但期望这些产品的制造商控制其产品的反射率是不切实际的,并且测量的再现性也会受到影响。

有时,视觉系统是用来成像镜面反射光的。在这些情况下,使用漫反射背景可能无法提供令人满意的基准强度方法。如果物体是平面的,那么背景可以是适当尺寸的平面镜。如果被成像的对象是一个更复杂的形状,那么除了使用漫反射背景外,很难对强度进行基准测试,这种情况下,难以进行基准量化。

背景设置到位后,使用照明设置和相机参数设置捕捉场景图像。让视觉系统计算并报告场景的最大和平均灰度。您必须确保视觉系统报告的最大灰度值不是视觉系统可用的最大值(例如,对于具有8位像素的视觉系统,最大灰度值不能为255)。如果报告了最大的灰度值,这表示相机处于饱和状态,则最大读数无效,平均灰度读数受损。除了少数例外,相机在饱和状态下工作是不可取的。

相机,背光

在这种情况下,让相机直接拍摄空场景,并报告图像的最大和平均灰度。同样,相机处于饱和状态通常是不可取的。在某些情况下,背光强度被设计为很高,使相机饱和。在这种情况下,必须降低相机曝光时间,以避免相机饱和。较好的方法是使用ND镜。如果视觉系统方便的话,也可以通过使用更快的快门速度(较短的曝光时间)来减少相机的曝光量,但稍微不太理想。

08

基准照明方向

照明方向有时是需要基准量化的,至少对于向前照明来说,使用一个抛光球体放置在视野中。事实上,抛光的半圆球会更好,但这些有点不寻常。球体通常是由轴承供应商提供的抛光钢球。它也可以是装饰物,半圆形的汽车轮毂帽。

图片

将球放置并固定在视野的中心。照明球的图像显示照明来自的方向。图像的捕获和归档为其他人检查视觉系统或复制视觉应用程序提供了一个基准。

图片

单点反射光表示单点光源。如果光以球为中心,则为轴上照明。

图片

对于环形光,无论是亮场还是暗场,抛光的球体都会显示出一圈光。

图片

同轴漫射照明产生一个独特的反射抛光球体。

09

基准照明均匀性

使用用于基准照明强度和相机相同的设置,捕捉图像。重要的是,背景材料尽可能均匀,没有纹理可由相机分辨。此外,许多视觉系统甚至一些相机都提供了一种常被称为“平场校正”的功能,它可以补偿图像的不均匀性,如果此功能可用并在视觉系统中使用,则必须为此基准禁用该功能。但是,如果在应用程序中可用并使用了平面校正,那么也可以在启用平面域校正的情况下执行此基准测试,这将是非常有用的。

图片

此图像的一些统计数据应该为您的图像记录:

最小灰度值=52

最大灰度值=187

平均灰度值=143

获取的图像必须准备如下:

  • 如果使用彩色图像,则将彩色图像转换为灰度。     如果颜色一致性是一个问题,您可以对红色、绿色和蓝色通道分别执行此过程。

  • 对图像进行低通滤波器,尽可能消除图像噪声。由于你正在寻找逐渐变化的光强,低通滤波可以是有益的。

生成一个伪彩色图像,其中每个特定的灰度范围(例如255-251、250246、245-241等。) 被一种特定的对比颜色所取代。如果视觉系统不能创建伪彩色图像,则可以使用PhotoShop等程序进行离线处理。

图片

如果生成伪彩色图像太复杂,或者该领域的技术人员无法实现,则可以创建显示等高线的图像如下:

  • 低通滤波图像。

减少图像中灰度值的数量(例如,将灰度值的数量从256减少到128或64)。即使经过滤波,在1像素的范围内也有如此大的变化,结果将是很小的价值。

  • 创建被过滤和抽取的图像的副本。

  • 腐蚀(或膨胀)图像副本。     使用3x3结构元素的简单侵蚀(或膨胀)是足够的。

  • 取两幅图像的绝对差值。     这个结果将是一个几乎纯黑色的图像。阈值为1的差分图像。结果将显示等高线(均匀强度的轮廓)。

图片

上图显示图像等高的处理结果。等高线相距4个灰度级。

如果你了解机器视觉技术,你可以理解图像中出现的不均匀性可能主要是由于光照的不均匀性,但它也受到诸如余弦等透镜效应的影响(渐晕),以及由图像传感器的光响应不均匀性(PRNU)以及其他光学效应。

10

基准颜色

基准颜色对于彩色相机的机器视觉系统是必不可少的。对于单色机器视觉系统,基准颜色可能有助于量化光源特征。

如果你知道如何使用分光度计,那么这些仪器可以很好地量化照明颜色。对于大多数机器视觉从业者来说,这些仪器是不可用的。这些仪器只测量光源,不考虑镜头或相机的图像传感器。

对于单色视觉系统,照明光源可以是宽带(例如白色)或窄带(例如红色LED)。基准颜色的挑战是,通过基准测试,确保使用相同的“白色”光或相同的“红色”光。许多单色视觉系统不受照明光谱的某些变化的影响,也没有理由对照明光源颜色进行基准测试

对于彩色视觉系统,获取商业彩色图表的图像。从图表的图像中,注意每个相关颜色的颜色坐标(例如R值、G值和B值)。最好使用最适合您的视觉应用程序的颜色系统。因此,您可以选择RGB、CYMK、L*a*b*或其他用于记录值的系统。

图片

对于单色成像应用,仍然有一种实用的方法来规范照明颜色。将一个颜色目标,如Greytag/Macbeth ColorChecker图表(参见上面的图24)放置在视野中易于重复放置的位置。给图表拍张照片。记录每个彩色方块的灰度。虽然这并不能确定任何特定的颜色或光的波长分布,但它确实提供了一个合理的基准度量来确定照明颜色的变化。

11

基准失真(畸变)

失真是由放大倍数的变化引起的。这些变化可能是由于透镜的特性导致放大率从图像的中心向外变化(即枕形和桶形失真)。它也可能是由于透镜的主平面、图像平面(图像传感器)和物体平面(视场)不平行导致透视失真。

失真的特征参数通常是获取测试图形的图像,如下图所示的点模式或棋盘模式。

点的中心的位置(或正方形的棋盘图案)是通过图像测量的。如果视觉系统提供这些测量,则测量畸变要容易得多,大多数机器视觉软件包提供畸变校正

畸变的特征参数是从图像中心到图像角点(以像素为单位)的成像和真实间距的差值除以从图像中心到对应点应该在哪里(以像素为单位)的真实间距的比值)。即:

𝐷𝑖𝑠𝑡𝑜𝑟𝑡𝑖𝑜𝑛 (𝑖𝑛 %) = 100 𝑥 (𝐼𝑚𝑎𝑔𝑒𝑑 𝐷𝑖𝑠𝑡𝑎𝑛𝑐𝑒 − 𝑇𝑟𝑢𝑒 𝐷𝑖𝑠𝑡𝑎𝑛𝑐𝑒 )/𝑇𝑟𝑢𝑒 𝐷𝑖𝑠𝑡𝑎𝑛𝑐𝑒

请注意,用于基准测试的获取和处理的图像不能被机器视觉软件纠正畸变。许多视觉系统进行了这种校正,如果使用,则必须禁用此基准。

12

图像噪声

图像噪声是由许多现象引起的,如照明变化

在视野中放置一个目标。虽然这个目标可以是任何东西,一个均匀的中性灰色,给出一个相当明亮的图像,在图像的任何地方不饱和工作最好。取一对图像。这两幅图像相减,计算得到的图像中像素值的均方根值(RMS);这是图像噪声。 

图片

两幅图像(噪声)差异的表面图

信噪比为两幅图像的平均亮度除以RMS。

13总结

本文所描述的基准是在工作良好的视觉系统上执行的,那么如果视觉系统需要维护,或者再现视觉系统的成像,维护技术人员或视觉工程师可以按照基准记录文档及SOP执行他们的任务,保证他们将视觉系统恢复或构建到与早期合格的视觉系统相当的性能。

文章转自:机器视觉课堂 

声明:转载此文目的在于传递更多信息,仅供读者学习、交流之目的。文章版权归原作者所有,如有侵权,请联系删除。

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

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

相关文章

移动云ONAIR媒体云全解读!媒体内容数字化融合一站式解决方案

当下,传统媒体面临着诸多挑战,如何利用信息技术提升内容的质量、形式和分发效率,成为媒体行业的迫切需求。移动云作为数字中国建设的“主力军”, 立足于新兴媒体与云计算市场的变化与需求,推出了ONAIR 媒体云解决方案&…

vue2学习笔记(2/2)

vue2学习笔记(1/2) vue2学习笔记(2/2) 文章目录 1. 初始化脚手架2. 分析脚手架&render函数文件结构图示及说明main.jsindex.htmlApp.vueSchool.vueStudent.vue 关于不同版本的Vue修改默认配置vue.config.js配置文件 3. ref属…

08. 【Linux教程】CentOS 目录介绍

CentOS 目录介绍 前面小节介绍了如何安装并登录连接 CentOS 系统,本小节围绕 CentOS 系统的目录,介绍其各个目录的作用,方便读者以后在工作中很好地将项目和软件归类存储,熟悉 CentOS 系统各个目录的功能介绍,有助于加…

035 Arrays类

示例 int[] nums new int[10]; // fill Arrays.fill(nums, 666); System.out.println(Arrays.toString(nums)); // sort nums new int[]{1, 3, 5, 7, 9, 2, 4, 6, 8}; Arrays.sort(nums); System.out.println(Arrays.toString(nums)); // equals int[] nums2 new int[]{1,…

【数据分享】1929-2023年全球站点的逐日平均能见度(Shp\Excel\免费获取)

气象数据是在各项研究中都经常使用的数据,气象指标包括气温、风速、降水、湿度等指标,说到常用的降水数据,最详细的降水数据是具体到气象监测站点的降水数据! 有关气象指标的监测站点数据,之前我们分享过1929-2023年全…

【Spring】代理模式

文章目录 代理模式对代理模式的理解静态代理动态代理JDK动态代理原理源码优化 CGLIB动态代理使用原理 JDK与CGLIB的对比 面试题JDK动态代理和CGLIB有什么区别?既然有没有接口都可以用CGLIB,为什么Spring还要使用JDK动态代理? 代理模式 对代理…

4. 树(二叉树、二叉查找树/二叉排序树/二叉搜索树、平衡二叉树、平衡二叉B树/红黑树)

树 1. 二叉树1.1 概述1.2 特点1.3 二叉树遍历方式1.3.1 前序遍历(先序遍历)1.3.2 中序遍历1.3.3 后序遍历1.3.4 层序遍历 2. 二叉查找树(二叉排序树、二叉搜索树)2.1 概述2.2 特点 3. 平衡二叉树3.1 概述3.2 特点3.3 旋转3.3.1 左旋3.3.2 右旋 3.4 平衡二…

云原生数据库 GaiaDB 的核心技术演进和解析

导读 在越来越强调云原生的环境下,存算分离作为一种新的架构理念,已经是大势所趋。新的技术架构带来新的问题和挑战,百度智能云的云原生数据库 GaiaDB 采用 Quorum 分布式协议、高性能网络、高可靠分布式存储引擎等技术实现更高的性能和可用性…

ElementUI Form:Select 选择器

ElementUI安装与使用指南 Select 选择器 点击下载learnelementuispringboot项目源码 效果图 el-select.vue&#xff08;Select选择器&#xff09;页面效果图 项目里el-select.vue代码 <script> export default {name: el_select,data() {return {options: [{value…

PHP之数据类型的基本介绍

让我为大家介绍一下PHP中的数据类型吧&#xff01; 数据类型有&#xff1a;字符串、整数、浮点数、布尔、数组、对象、NULL、资源类型 我们可以使用gettype去获取数据类型 var_jump()会返回变量的数据类型与值&#xff0c;一般用于开发调试时使用 字符串 字符串是字符序列…

备战蓝桥杯---搜索(优化1)

显然&#xff0c;我们可以用BFS解决&#xff0c;具体实现与八数码类似&#xff1a; 下面是代码&#xff1a; #include<bits/stdc.h> using namespace std; #define N 3000000 string a,b; int hh,dis[N],cnt; struct node{string u,v; }bian[7]; map<string,int>…

Python爬虫requests库详解

使用 requests 上一节中&#xff0c;我们了解了 urllib 的基本用法&#xff0c;但是其中确实有不方便的地方&#xff0c;比如处理网页验证和 Cookies 时&#xff0c;需要写 Opener 和 Handler 来处理。为了更加方便地实现这些操作&#xff0c;就有了更为强大的库 requests&…

docker 网络模型

一、docker的网络模型分为四种 【1】Host(与宿主机共享一个网络)&#xff0c;宿主机的localhost 及 容器内的localhost 【2】Bridge(与宿主机共享一个局域网&#xff0c;有自己的网络&#xff1b;docker运行默认Bridge)&#xff1b;容器内localhost不是宿主机localhost 【3】…

【CSS + ElementUI】更改 el-carousel 指示器样式且隐藏左右箭头

需求 前三条数据以走马灯形式展现&#xff0c;指示器 hover 时可以切换到对应内容 实现 <template><div v-loading"latestLoading"><div class"upload-first" v-show"latestThreeList.length > 0"><el-carousel ind…

双非本科准备秋招(16.1)—— 力扣二叉树

1、101. 对称二叉树 检查是否对称&#xff0c;其实就是检查左节点等不等于右节点&#xff0c;我们可以用递归来做。 如果左右节点都为null&#xff0c;说明肯定对称呀&#xff0c;返回true。 如果一个为null一个不为null&#xff0c;或者左右的值不相等&#xff0c;则为false。…

flutter开发实战-ijkplayer视频播放器功能

flutter开发实战-ijkplayer视频播放器功能 使用better_player播放器进行播放视频时候&#xff0c;在Android上会出现解码失败的问题&#xff0c;better_player使用的是video_player&#xff0c;video_player很多视频无法解码。最终采用ijkplayer播放器插件&#xff0c;在flutt…

3D力导向树插件-3d-force-graph学习001

一、引入文件&#xff1a;下载静态js文件引入 1、**以vue项目测试&#xff0c;在index.html文件中引入静态文件&#xff08;js文件可在官网下载&#xff09;** 2、**也曾尝试用npm包下载引入的方法&#xff0c;总是会有报错&#xff0c;所以采用静态js文件引入的方式** 二、基…

【高质量精品】2024美赛B题22页word版高质量半成品论文+多版保奖思路+数据+前四问思路代码等(后续会更新)

一定要点击文末的卡片&#xff0c;进入后&#xff0c;获取完整论文&#xff01;&#xff01; B 题整体模型构建 1. 潜水器动力系统失效&#xff1a;模型需要考虑潜水器在无推进力情况下的行为。 2. 失去与主船通信&#xff1a;考虑无法从主船接收指令或发送位置信息的情况。…

【AIGC核心技术剖析】DreamCraft3D一种层次化的3D内容生成方法

DreamCraft3D是一种用于生成高保真、连贯3D对象的层次化3D内容生成方法。它利用2D参考图像引导几何塑造和纹理增强阶段&#xff0c;通过视角相关扩散模型执行得分蒸馏采样&#xff0c;解决了现有方法中存在的一致性问题。使用Bootstrapped Score Distillation来提高纹理&#x…

LabVIEW与EtherCAT实现风洞安全联锁及状态监测

LabVIEW与EtherCAT实现风洞安全联锁及状态监测 在现代风洞试验中&#xff0c;安全联锁与状态监测系统发挥着至关重要的作用&#xff0c;确保了试验过程的安全性与高效性。介绍了一套基于EtherCAT总线技术和LabVIEW软件开发的风洞安全联锁及状态监测系统。该系统通过实时、可靠…