shevin

  • Checkout
    • Confirmation
    • Order History
    • Receipt
    • Transaction Failed
  • サンプルページ
Illustration of a bird flying.
  • Levenberg-Marquardt nonlinear least squares algorithms

    http://users.ics.forth.gr/~lourakis/levmar/index.html#download 先前做雷达标定用matlab导出这个算法调用,感觉也很爽,今天突然看到c++版本的,值得推荐,可以去上述地址下载。

    April 15, 2023
  • [转]gamma值

    广义的GAMMA值 Gamma值的广义定义就是输入值和输出值的Gamma幂指数关系,用来补偿人眼对自然亮度的非线性感知。 Gamma为了解决人眼对自然亮度非线性感知的问题,其二是因为记录存储的有限性。 人眼感觉黑->白范围“有限”,灯泡可以无限,但感觉会趋于一个有限制值; 分析:此时输入是灯泡的强度,输出是人眼的感觉,大自然中,感觉的差别阈限随原来刺激量的变化而变化,这是著名的韦伯定律。 当物理亮度达到白色的20%左右的时候,人的心目中已经感受到中灰色(即0.5处)的概念。而剩下的一半高光区的灰阶,需要用白色80%的物理能量才能照亮成白色。根据输入和输出的关系,可确定此时的Gamma大约在1.8~2.5,而现在大多数用2.2。 所以,GAMMA值的应用非常多,如图像的拍摄中的相机的GAMMA、图像显示中的显示器的GAMMA、图像输出中的打印机、印刷机等GAMMA等,不同设备的GAMMA描述的都是此设备的信号值对应的亮暗关系,而且,这些关系都是非线性的。 显示器的GAMMA值 显示器的Gamma值表示了输入信号的颜色值以及发光的亮度之间的关系,也就是输出时从黑到白的亮度过渡。同样,其也是非线性关系的。使用不同的Gamma值:1.0(线性响应),1.8~2.2(较暗的图像),3.0(过暗的图像)显示同一幅图像: 可见,较低的Gamma值(1.0)有一个较亮,较平稳的显示;而较高的Gamma值(2.2)有更高对比度的较暗的显示。现在显示器一般用8位深的RGB来记录数字图像,所以最大的数据存储量就是28 * 28 * 28 = 16,777,216,如果使用线性的方式进行存储自然中的亮度,那可能根本不够用。所以拍摄的图像先用GAMMA进行压缩,保留了大部分的中间和暗调细节,再通过GAMMA释放(校正)并显示,展示给人眼看见,保证了人眼在显示器上感觉和自然中相同。 什么是GAMMA值为1.0线性响应? 对于采集设备,如相机或者扫描仪,Gamma为1.0的时候,图像不存在压缩和释放,直接将原自然高动态亮度1:1输出为高动态显示信号,如果不对图像进行GAMMA校正,整体图像会显得更亮,会失去更多的中间调和暗调,同时图像文件的大小也会更大。如我们熟知的RAW工作流程就是一种线性GAMMA流程。 显示器的GAMMA值标准是多少? GAMMA值没有标准,如果要正确的找到GAMMA的标准,只能通过每台显示器的调整GAMMA更适合人眼的感觉,即感觉白-黑之间的渐变平滑,而且中间灰处于0.5中间的位置。 一般而言,显示器的GAMMA值会在1.8~2.5之间。由于最初的CRT显示器的GAMMA采用2.2,所以现在大部分显示器还是沿用2.2作为推荐的GAMMA值,但Mac中使用1.8。没有对与错,最正确的方法则是通过灰介自己找到最佳的GAMMA值。 未使用GAMMA校正和使用1.8GAMMA校正的图像对比 打印机、印刷机GAMMA值? 流程中的所有设备都有它们自己独有的Gamma特性,这也是为什么用Gamma查找表(LUTs)来生成显示器的Gamma以匹配其它设备的Gamma。如专业的扫描仪的Gamma值一直都是1.0,这样可以在扫描过程中得到最大的线性响应,而便宜的扫描仪则使用较高的Gamma值来避免多余的暗调噪声。 对于胶印,GAMMA是CMYK比例和人眼的亮度刺激关系,也就是密度值大小,所以我们通常使用“网点扩大”或者“TVI”,而不是“Gamma”,但是两者同理。它是设备的阶调响应以及中间调的主要影响因素,这点与Gamma类似。印刷机的网点扩大有点像1.7,1.8的Gamma。但是实际的值取决于印刷机、纸张、油墨等。相关的因素比显示器的GAMMA校正多很多。 印刷机GAMMA与显示器的GAMMA的比较 事实上,如果观察一幅印刷图像,你实际会看到低亮度和高光部分的压缩,因此,在曲线图上,印刷图像的色调曲线或Gamma曲线会呈现S形。 显示器的Gamma曲线在端点只会沿着一个方向伸展,这取决于显示器的模拟状况。这就是为什么显示器上的图像一直比印刷图像呈现出更大的对比度的原因。

    April 15, 2023
  • [转]线阵相机扫描速度

    一.变量的定义 首先设定以下变量:(1)线阵相机的每线像素数(单位:pixel):Hc(2)目标物的宽幅(单位:m):Lo(3)目标物运行速率(单位:m/s):Vo(4)线阵相机线扫描速率(单位:Hz,即 线/s):Vc(5)扫描一帧图像目标物运行的时间(单位:s):To(6)扫描一帧图像线阵相机的扫描时间(单位:s):Tc(7)横向精度(每个像素代表的实际宽度):PH(8)纵向精度(每个像素扫描的实际长度):PL 横向的扫描精度为:线阵相机的每线像素数/目标物的宽幅 即ph= Hc/( Lo); 纵向扫描精度为: [线阵相机线扫描速率(单位:Hz,即 线/s)*扫描一帧图像线阵相机的扫描时间(单位:s)]/ [目标物运行速率(单位:m/s)*扫描一帧图像目标物运行的时间(单位:s)] PL=(Vc×Tc)/( 1pixel×Vo× To)(To=Tc)=(Vc)/( 1pixel×Vo) 要想成像条件好,需要横向分辨率和纵向分辨率相等 Lo/Hc=Vo/Vc 二,线扫速度的计算 根据“横向和纵向的分辨率相等”的原则,得到公式如下:Lo/Hc=Vo/Vc则相机的线扫描速率为:Vc =(Hc ×Vo)/( Lo),其中Hc是线阵相机的每线像素数, Lo目标物的宽幅,Vo目标物运行速率; 三,线阵相机的关键参数 resolution: 像素数, 传感器上有多少个像元。 MAX DATA RATE(应该叫相机时钟吧): 意思是相机每秒可以采取最大的数据量 Linerate 行频: 意思是每秒钟相机最大可以采取多少行影像 比如线扫相机中一行的像素为8192,每秒可以获得的最大数据量是160Mhz 则行频为:160000000/8192=19000  line/sec 也可以理解为:  四,实例说明 电子铜带宽度450mm,生产线速度120米/分=120000mm/60s=2000mm/s,需要检测的最小缺陷是0.2mm; 横向的分辨率的计算选择线扫相机的分辨率:450/Hc=0.2mm/pixel——->Hc=450/0.2=2250,但是真正的相机拍照,直接达到这和精度是有难度的,所以选型一般是Hc=450/0.2*2=4500,按照相机的分辨率的规律,可以选择4096像素的线扫相机; 纵向的选择(关键参数是线扫相机的行频): 根据上面的选型可以得到横向的分辨率:450mm/4096pixel=0.11mm/pixel 如果需要行和列的分辨率相等,则需要(2000mm/s)/(0.11mm/pixel)=18181line, 这样就可以推算出行频(意思是每秒钟相机最大可以采取多少行影像)满足18181line; 综上所述,相机的选型可以为行向分辨率4098,行频为19000的线扫相机即可;

    April 15, 2023
  • 线阵相机选型参数计算

    1).计算分辨率:幅宽除以最小检测精度得出每行需要的像素。 2).检测精度:幅宽除以像素得出实际检测精度。 3).扫描行数:每秒运动速度长度除以精度得出每秒扫描行数。 根据以上计算结果选择线阵相机举例如下: 如幅宽为1600 毫米、精度1 毫米、运动速度22000mm/s 相机:1600/1=1600 像素。 最少2000像素,选定为2k 相机。 实际精度: 1600/2048=0.8 22000mm/0.8mm=27.5KHz 应选定相机为2048 像素28kHz 相机。 线阵相机有哪些特点? 1).线阵相机使用的线扫描传感器通常只有一行感光单元(少数彩色线阵使用三行感光单元的传感器) 2).线阵相机每次只采集一行图像; 3).线阵相机每次只输出一行图像; 4).与传统的面阵相机相比,面阵扫描每次采集若干行的图像并以帧方式输出。 为什么要在机器视觉检测中使用线阵相机? 1).线阵相机有更高的分辨率;线阵相机每行像素一般为1024,2048,4096,8012;而一般的面阵相机仅为640,768,1280,大于2048的面阵很少见。 2).线阵相机的采集速度更快;不同型号的线阵相机采集速度从每秒5000 行-60000 行不等,用户可以选择每几行或者每十几行即构成一帧图像进行处理一次,因此可以达到很高的帧率。 3).线阵相机可以不间断的连续采集和处理;线阵相机可以对直线运动的物体(直线导轨,滚筒上的纸张,织物,印刷品,传送带上的物体等)进行连续采集。 4).线阵相机有更简单合理的构造。与面阵相机相比,线阵相机不会浪费分辨率采集到无用数据。

    April 15, 2023
  • 线阵相机调帧率_对工业相机帧率的相关知识

    工业相机是机器视觉系统的重要组成部分之一,在机器视觉系统中有着非常重要的作用。工业相机已经被广泛应用于工业生产线在线检测、智能交通,机器视觉,科研,军事科学,航天航空等众多领域。工业相机的主要参数包括:分辨率、帧率、像素、像元尺寸、光谱响应特性等。下面我们来对工业相机帧率的相关知识进行讲解: 帧率(Framerate)是用于测量显示帧数的量度。所谓的测量单位为每秒显示帧数(FramesperSecond),简称:FPS或“赫兹”(Hz)。 由于人类眼睛的特殊生理结构,如果所看画面之帧率高于16fps的时候,就会认为是连贯的,此现象称之为视觉暂留。这也就是为什么电影胶片是一格一格拍摄出来,然后快速播放的。 每秒的帧数(fps)或者说帧率表示图形处理器处理场时每秒钟能够更新的次数。高的帧率可以得到更流畅、更逼真的动画。一般来说30fps就是可以接受的,但是将性能提升至60fps则可以明显提升交互感和逼真感,但是一般来说超过75fps一般就不容易察觉到有明显的流畅度提升了。如果帧率超过屏幕刷新率只会浪费图形处理的能力,因为监视器不能以这么快的速度更新,这样超过刷新率的帧率就浪费掉了。 最大帧率(FrameRate)/行频(LineRate):即相机采集传输图像的速率,对于面阵相机一般为每秒采集的帧数(Frames/Sec.),对于线阵相机为每秒采集的行数(Hz)。 相机帧率和曝光时间的关系: 有人问,为什么我们在使用工业相机的时候,将相机的曝光时间增加以后,相机的帧率就下降,而且下降得很厉害,相机的帧率和曝光的关系是怎样,如果想要获得固定的帧率,相机的曝光时间应该怎么设置?因此写下本文,解答了朋友的问题,也使用Sentech相机来做过相关的测试,帧率和曝光时间跟本文中所述一致。详细原理见下文所示: 曝光和传感器读数 相机上的图像采集过程包括两个截然不同的部分。第一部分是曝光。曝光完成后,进行第二部分Readout过程即从传感器的寄存器中读出数据并传送出去(Readout过程)。 关于图像采集过程中,相机操作有两种常见的方法:“non-overlapped”的曝光和“overlapped”的曝光。在非重叠(“non-overlapped”)模式中,每个图像采集的周期中,相机在下一个图像采集开始前,均要完成曝光/读出整个过程。如图1所示。 Fig.1Non-overlappedExposure 虽然非重叠(“non-overlapped”)的模式,可适合于许多情况下,但它并不是最有效的方式。为了提高相机的帧率,允许在下一帧图像开始曝光时候,将前一帧获得的图像数据读出并传送出去。相机“重叠”(“overlapped”)曝光的方式见图2所示。 从图2中我们可以看到,相机读出数据和下一帧曝光开始出现重叠的情况,在同一个时刻内,相机执行两个操作,导致在同样的单位时间内,在“overlapped”曝光模式下,可以采集到更多的图片,即相机的帧率更高。 Fig.2overlappedExposure 从上边两个图中,我们可以知道在“non-overlapped”的曝光和“overlapped”的曝光模式底下,一帧图像的周期存在着这样的关系:”overlapped”的曝光模式下:FramePeriod≤ExposureTime+ReadoutTime “non-overlapped”的曝光模式下:FramePeriod>ExposureTime+ReadoutTime 以STC-A202A为例: 图1Spec 从Spec中可知,其PixelFrequency为:36.8181MHz,所以1Clock的时间为1/36.8181Mhz=27.3836ns,接下来我们看相机的Timingchart,首先先看HorizontalTiming,见图2所示: 图2HorizontalTiming 从图2中,我们从中可读到的信息为,1CLK=27.1605nseconds,和我们从spec上得到的PixelFrequency算出来的时间差不多。扫描1Horizontal需要1920CLK,即1H=27.1605*1920=52148.16ns=52.14816us 接下来看相机VerticalTiming见图3所示: 图3VerticalTiming 从图3中,我们可读出的信息为,1H=52.1482useconds,和我们通过图2计算出来horizontalScanning的时间一致,而在一帧图像中,需要扫描1252H,其中EffectivePixels为1220H,即1帧图像中,EffectivePixelsReadout的时间为1220*52.1482=63620.804us=63.620804ms,一个VD信号,所用的时间为:1252*52.1482=67793.5464us=67.7935464ms。按照我们前边的理论,一个cycletime内,一帧图像的时间为:FramePeriod=ExposureTime+ReadoutTime 而我们知道STC-A202A的帧率为:15fps,即1FramePeriod=1/15=66.7ms。 所以在“non-overlapped”exposure模式下,ExposureTime=FramePeriod–ReadoutTime=66.7ms-63.6ms=3.1ms,在此模式下,若是超过3.1ms的曝光时间,其帧率就会比标准帧率15fps低。 假如1颗相机ReadoutTime为:66.7ms,即数据传输时间为A,A=66.7ms,曝光时间为B,B=5ms,则一帧图像的时间为C,则C=A+B=66.7ms+5ms=71.7ms,则这颗相机的帧率为:1000/71.7=13.94FPS,则这颗相机的帧率为13.94. 注意:一般情况下,若我们的相机的帧率为15fps,则表示相机ReadOut数据的时间为1000ms/15=66.7ms

    April 15, 2023
  • [转]旋转标定

    April 1, 2023
  • 骆驼祥子

    March 24, 2023
  • 分享下最新版vtk编译后的库

    vs2017_x64环境 去掉vtk编译的后dll版本号的输出方式,下载地址 复制这段内容后打开百度网盘APP,操作更方便哦。需要下载的可以留言回头放链接 【超级会员V4】通过百度网盘分享的文件:vtk9.2.6…链接:https://pan.baidu.com/s/1Ga4gvqbUrVbRyjKM7tTmFg?pwd=b93c 提取码:b93c复制这段内容打开「百度网盘APP 即可获取」

    March 13, 2023
  • 三大错误

    向糊涂人说了明白话;试图和不靠谱的人做正经事;和无情的人谈交情。

    March 6, 2023
  • 今天一个同事研究qtcreator的源码发现能调用private函数的疑问

    大概看了下第一个想到的应该是用了友元,但是一看没有直接关系,感觉很风骚,然后紧跟踪了一下,居然嵌套了三套友元,背后的实现真的很有意思。

    March 2, 2023
←Previous Page
1 … 4 5 6 7 8 9
Next Page→

shevin

Proudly powered by WordPress