精华内容
下载资源
问答
  • 但是,Matlab获取相机参数往往会自动调整增益和曝光,导致亮度值不断在变。 正文 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下...

    MATLAB固定工业相机曝光时间和增益系数

    为什么写这篇博文?

    两个原因。
    Matlab可以控制工业相机很多参数。但是,网络上关于其参数的配置文章较少,更多出现在论坛之中。这是其一。
    在做光学实验时候,常常需要亮度的绝对值。但是,Matlab获取相机参数往往会自动调整增益和曝光,导致亮度值不断在变。

    正文

    首先查看相机有那些可以配置的参数。

    vid = videoinput('winvideo', 2, 'RGB8_1280x1024');
    src = getselectedsource(vid);
    get(src);
    

    在get(src)后,出现可配置参数的列表。

      General Settings:
        Parent = [1x1 videoinput]
        Selected = on
        SourceName = input1
        Tag = [0x0 string]
        Type = videosource
    
      Device Specific Properties:
        Brightness = 0
        Contrast = 0
        Exposure = -5
        ExposureMode = auto
        FrameRate = 30.0000
        Gain = 8
        GainMode = auto
    

    其中’ExposureMode’和’GainMode’分别是曝光模式和增益模式。如果是自动,即auto,Matlab会自动调整曝光。对亮度的绝对值无要求的实验这不是障碍,甚至是优点。但是对于亮度绝对值敏感的实验,这就要命了。
    更改方法如下:

    set(src,'ExposureMode','Manual');
    set(src,'GainMode','Manual');
    

    此时,相机将工作在固定的曝光模式和增益系数下。

    另外,关于getsnapshot()这个函数,有很多细节值得注意。通常,人们习惯如此配置相机。

    set(vid,'FramesPerTrigger',1)
    set(vid,'TriggerRepeat',1)
    

    或者

    vid.FramesPerTrigger = 1;
    vid.TriggerRepeat=1;
    

    以上两个代码段含义相同,是同一种做法的两种代码。

    So far so good,看起来没什么问题。问题在于,紧随其后的是

    img=getsnapshot(vid);
    

    看看官方文档怎么描述“getsnapshot()”的:
    在这里插入图片描述
    翻译一下这段注释:Frame=GETSNAPSHOT(OBJ)立刻返回一帧图像。被返回的此帧数据独立于FramesPerTrigger特性,也不影响FramesAvailable或者FramesAcquired 特性。既然此函数不需要配置相机帧率和Trigger,为什么还要配置呢?答案在于运行时间。

    相机工作在默认状态,参数如下

      General Settings:
        DeviceID = 2
        DiskLogger = []
        DiskLoggerFrameCount = 0
        EventLog = [1×0 struct]
        FrameGrabInterval = 1
        FramesAcquired = 0
        FramesAvailable = 0
        FramesPerTrigger = 10
        Logging = off
        LoggingMode = memory
        Name = RGB8_1280x1024-winvideo-2
        NumberOfBands = 1
        Previewing = off
        ROIPosition = [0 0 1280 1024]
        Running = off
        Tag = 
        Timeout = 10
        Type = videoinput
        UserData = []
        VideoFormat = RGB8_1280x1024
        VideoResolution = [1280 1024]
    
      Color Space Settings:
        BayerSensorAlignment = grbg
        ReturnedColorSpace = grayscale
    
      Callback Function Settings:
        ErrorFcn = @imaqcallback
        FramesAcquiredFcn = []
        FramesAcquiredFcnCount = 0
        StartFcn = []
        StopFcn = []
        TimerFcn = []
        TimerPeriod = 1
        TriggerFcn = []
    
      Trigger Settings:
        InitialTriggerTime = []
        TriggerCondition = none
        TriggerFrameDelay = 0
        TriggerRepeat = 0
        TriggersExecuted = 0
        TriggerSource = none
        TriggerType = immediate
    
      Acquisition Sources:
        SelectedSourceName = input1
        Source = [1×1 videosource]
    

    在默认状态下,我拍摄了诸多激光干涉图样。拍摄正常。从目前实验看来,TriggerRepeat和FramesPerTrigger并没有影响到Getsnapshot()函数的运行结果。但是,尽管不影响运行结果,它会影响运行时间(11代i7,仅这个函数就用时1s)。如果不设置这两个参数,Getsnapshot()函数会变得非常耗时。

    通常,为了追求更少的运行时间,会进行如下配置

    set(vid,'FramesPerTrigger',inf)
    set(vid,'TriggerRepeat',0) % 相机默认即是0,可以不写此行代码。
    

    另外,随着运行时间增加,相机会在电脑存入很多数据,占用RAM。常用flushdata()函数清理。

    展开全文
  • 相机曝光时间增益

    千次阅读 2018-11-12 09:51:04
    曝光和增益的一些基本概念  曝光时间:快门速度,简单来讲就是按下快门的时间,时间越长,光子到CCD\CMOS表面的光子总和越多,采集的图像就会越亮;如果曝光过度,则照片过亮,失去图像细节;如果曝光不足,则照片过暗...

    曝光和增益的一些基本概念

        曝光时间:快门速度,简单来讲就是按下快门的时间,时间越长,光子到CCD\CMOS表面的光子总和越多,采集的图像就会越亮;如果曝光过度,则照片过亮,失去图像细节;如果曝光不足,则照片过暗,同样会失去图像细节。虽然曝光时间相对长一点图像质量会好一些,但是不能无限长,因为在曝光过程中噪音也在累加。

        光圈:光圈控制光线进入的大小,光圈越大,则单位时间的光通量越大,光圈越小,则单位时间的光通量越小。

        增益:经过双采样之后的模拟信号的放大增益。但是在对图像信号进行放大的过程中同时也会放大噪声信号。

     

        曝光和增益是直接控制传感器(CCD/CMOS)上读出来的数据,是要优先调节的,以调节曝光时间为主。在不过曝的前提下,增加曝光时间可以增加信噪比,使图像清晰。当然,对于很弱的信号,曝光也不能无限增加,因为随着曝光时间的增加,噪音也会积累, 曝光补偿就是增加拍摄时的曝光量。

        增益一般只是在信号弱,但不想增加曝光时间的情况下使用,一般相机增益都产生很大噪音。工业相机在不同增益时图像的成像质量不一样,增益越小,噪点越小;增益越大,噪点越多,特别是在暗处。数码相机的ISO就是这里说的增益,增大ISO,是增加感光器件对光的灵敏度。高感光度对低光照灵敏,同时对噪杂信号也灵敏,信噪比小,所以高感光度噪点也多(可利用图片软件的降噪功能减轻或去除)。

        调节亮度增益说白了就是改变ISO,改变CMOS传感器的感光性能,但是会影响到画质。调节曝光补偿则是为了改变快门速度,不改变ISO不会影响画质。

    展开全文
  • 我们的人眼其实拥有测光系统的照相机有着类似的工作机制,先对光线的强度进行测定,再计算出合适的曝光参数进行曝光。一个证明就是我们如果在中午看完电影从电影院出来,我们会本能的感觉到外...

    这几个概念在网上资料比较少,讲得都比较模糊。

    勇哥先上一张图,后面再介绍具体的概念。

    216156534_2_2021022302464668

    什么是曝光?

    尽管摄影自诞生以来,无数人都在探索相机这个工具究竟能发挥那些作用。但一个最基本的作用,就是把我们眼睛看到的通过摄影来记录下来。

    我们的人眼其实和拥有测光系统的照相机有着类似的工作机制,先对光线的强度进行测定,再计算出合适的曝光参数进行曝光。一个证明就是我们如果在中午看完电影从电影院出来,我们会本能的感觉到外面的光线非常刺眼,但只要稍微闭一下眼,就立刻适应了。也就是说,我们的眼睛在光线强度突然发生巨大变化的时候,也是需要一些时间去“调整曝光参数”的。

    如果把我们的视觉系统比做照相机的话,大家都应该能理解,我们瞳孔其实就起到了照相机镜头光圈类似的作用,我们的科学家已经证明了我们的瞳孔在看东西的时候一直在运动着的,会根据眼睛所注意到的物体的亮度,放大收缩。这个视野范围约37度到38度,那么如果把我们的视觉系统比做照相机的话,那么这就是一台带测光的自动档照相机。

    好,有了以上的理论基础,我们来解释一个问题:在逆光情况下为什么我们眼睛看的人或者物都是正常亮度,可是相机咔嚓一下就黑了呢?

    原因有以下几个方面,

    第一,基于前面对眼睛的阐述,我们之所以看到很正常,其实我们的眼睛在注意看东西的时候,实际上只有37到38度左右的有效视野范围,比如大太阳下的人,你看人脸,实际上天空你并没注意到,但是你看到天空的时候,你眼睛实际上注意力有调整到了天空,等于又针对了天空进行“测光”,如果人和太阳光比过强,你的眼睛抬头的时候,实际上也是要本能的眯起来的。这就是我们视觉系统在“调整曝光参数”的证明。但即便如此,相机完成这些转换要比我们的视觉系统慢的多,而且必须一张一张的拍。

    也许有同学会问,好像不对啊,37度38度范围如果离开的够远,那么我们眼睛的有效范围也很大,肯定可以同时注意到人和天空了。

    那么这就是第二个原因,我们人眼可以接受的最亮的光强和最暗的光强比——也就是“宽容度”的概念(关于“宽容度”可以点击查看我的另外一篇专栏文章:产品测试|关于华为P9照相功能宽容度测试 - 知乎专栏,)约为50000倍,换算为光圈的档数约15.6档的光圈,也就是2的15.6次方。而我们目前的照相机宽容度,可以查到的数据最高约为14档,2的14次方换算一下也就是16000倍多一些,50000倍和16000倍相比差距还是很可观的。

    什么是快门

    工业相机一般都具备电子快门特性,电子快门不需任何机械部件。相机采用电子脉冲长度控制相机传感器对光的积分时间。由于相机感光时间越长,信号电荷累积也越多,输出信号的幅值也越大。相机输出的仅是电子快门开启时的传感器累积的光电荷信号,其余时间里的光电荷信号则被泄放。电子快门的特点是无运转噪声、速度档次多、速度快,适合分析快速运动过程,但存在图像的不连续、间断跳跃感。

    目前,相机的最短电子快门时间一般为百万分之一秒, 较高的电子快门速度对于观察运动图像会产生一个“动作冻结”效应,从而大大地增加了相机的动态分辨率。同时,当电子快门速度提高时,在传感器积分时间内,聚焦在传感器上的光通量减少,将会降低相机的灵敏度。因而高速的电子快门需要有充足的光照才能保证图像正常的灰度。

    常见的电子快门的方式有全局快门(Global shutter)和卷帘快门(rolling shutter)两种,全局快门是曝光时,传感器上所有像素在同一时刻开启曝光并在同一时刻曝光结束,将物体某时刻的状态成像,对运动物体而言类似将运动物体冻结了,所以适合拍摄高速运动的物体。卷帘快门是逐行顺序开启曝光,不同行间曝光的开启时刻有个很小的延迟,所以不适合运动物体的拍摄。

    如果相机的曝光时间过长,就会使速度快的运动物体变模糊。工业相机的电子快门可以使曝光时间得到控制和调节,这种调节是非机械式的,快门控制具有很大的灵活性,给视觉系统带来了极大的好处。电子快门的曝光时间的变化,仅仅改变了相机光敏像元对外来光的感光积分时间,但不会改变相机内在的视频读出周期。对于运动物体来说,快门时间越短,所获取的图像越精确,即越不模糊,但过短的曝光时间会需要光照强度大大提高,给光照技术带来很大的困难,所以应选择合适的快门时间。

    工业相机工作过程中曝光(Exposure)是图像传感器进行感光的过程。在曝光过程中,CCD/CMOS收集光子并转换成电荷;曝光结束后,CCD/CMOS通过一定的方式将电荷移出。从光曝光对照片质量的影响很大,如果曝光过度,则照片过亮,失去图像细节;如果曝光不足,则照片过暗,同样会失去图像细节。控制曝光就是控制总的光通量,也就是曝光过程中到达CCD/CMOS表面的光子的总和。

    影响曝光的因素

    有三个:光圈。

    光圈控制光线进入的通路的大小,光圈越大,则单位时间的光通量越大,光圈越小,则单位时间的光通量越小。

    曝光时间。也就是快门速度。

    在数码相机中,可以采用电子快门,也可以采用传统的机械快门。

    快门速度和光圈大小是互补的,比如,为了加更多的光可以进来。

    增益。经过双采样之后的模拟信号的放大增益。

    由于在对图像信号进行放大的过程中同时也会放大噪声信号,因此通常把放大器增益设为最小,曝光和增益是直接控制传感器(CCD/CMOS)上读出来的数据,是要优先调节的,以调节曝光时间为主。

    在不过曝的前提下,增加曝光时间可以增加信噪比,使图像清晰。当然,对于很弱的信号,曝光也不能无限增加,因为随着曝光时间的增加,噪音也会积累, 曝光补偿就是增加拍摄时的曝光量。

    增益一般只是在信号弱,但不想增加曝光时间的情况下使用,一般相机增益都产生很大噪音。工业相机在不同增益时图像的成像质量不一样,增益越小,噪点越小;增益越大,噪点越多,特别是在暗处。

    数码相机的ISO就是这里说的增益,增大ISO,是增加感光器件对光的灵敏度。高感光度对低光照灵敏,同时对噪杂信号也灵敏,信噪比小,所以高感光度噪点也多(可利用图片软件的降噪功能减轻或去除)。

    调节亮度增益说白了就是改变ISO,改变CMOS传感器的感光性能,但是会影响到画质。调节曝光补偿则是为了改变快门速度,不改变ISO不会影响画质。

    工业相机不同增益时图像的成像质量不一样,增益越小,噪点越小;增益越大,噪点越多,特别是暗处。增益在工业相机中叫增益,在民用数码相机、单反中,有一个更常用的名字叫ISO。

    ISO越大,则增益越大,图像的噪声也越多。而评价各厂商的相机产品时,往往后评价其在高增益条件下的成像质量如何。

    增益一般只是在信号弱,但不想增加曝光时间的情况下使用。一般相机增益都产生很大噪音的,所以几乎不怎么用。

    其中曝光和增益是直接控制传感器(CCD/CMOS)上读出来的数据,是要优先调节的,以调节曝光时间为主。

    不过曝的前提下,增加曝光时间可以增加信噪比,使图像清晰。软件上有个选项可以把过曝的区域显示出来。当然,对于很弱的信号,曝光也不能无限增加,因为随着曝光时间增加,噪音也会积累。所谓冷CCD就是靠降温减少噪音,从而可以长时间曝光拍摄弱信号。

    转自:勇哥的机器视觉216156534_3_20210223024646193End216156534_3_20210223024646193

    展开全文
  • 工业相机曝光和增益的基本概念

    千次阅读 2019-03-26 09:09:36
    曝光时间。也就是快门速度。在数码相机中,可以采用电子快门,也可以采用传统的机械快门。快门速度光圈大小是互补的,比如,为了加更多的光可以进来。增益。经过双采样之后的模拟信号的放大增益。由于在对图像信号进行...

    影响曝光的因素有三个:
    光圈。光圈控制光线进入的通路的大小,光圈越大,则单位时间的光通量越大,光圈越小,则单位时间的光通量越小。
    曝光时间。也就是快门速度。在数码相机中,可以采用电子快门,也可以采用传统的机械快门。快门速度和光圈大小是互补的,比如,为了加更多的光可以进来。
    增益。经过双采样之后的模拟信号的放大增益。由于在对图像信号进行放大的过程中同时也会放大噪声信号,因此通常把放大器增益设为最小。工业相机在不同增益时图像的成像质量不一样,增益越小,噪点越小;增益越大,噪点越多,特别是在暗处。数码相机的ISO就是这里说的增益,增大ISO,是增加感光器件对光的灵敏度。高感光度对低光照灵敏,同时对噪杂信号也灵敏,信噪比小,所以高感光度噪点也多(可利用图片软件的降噪功能减轻或去除)。增益一般只是在信号弱,但不想增加曝光时间的情况下使用。一般相机增益都产生很大噪音的,所以几乎不怎么用。

    在不过曝的前提下,增加曝光时间可以增加信噪比,使图像清晰。当然,对于很弱的信号,曝光也不能无限增加,因为随着曝光时间的增加,噪音也会积累, 曝光补偿就是增加拍摄时的曝光量。调节亮度增益说白了就是改变ISO,改变CMOS传感器的感光性能,但是会影响到画质。调节曝光补偿则是为了改变快门速度,不改变ISO不会影响画质。

    http://bbs.gongkong.com/d/201804/755369_1.shtml

    展开全文
  • 相机曝光增益

    千次阅读 2018-05-01 17:06:31
    曝光 增益 是直接控制传感器(CCD/CMOS)上读出来的数据,是要优先调节的,以调节曝光时间为主。不过曝的前提下,增加曝光时间可以增加信噪比,使图像清晰。软件上有个选项可以把过曝的区域显示出来。当然,对于...
  • 曝光 增益 是直接控制传感器(CCD/CMOS)上读出来的数据,是要优先调节的,以调节曝光时间为主。 不过曝的前提下,增加曝光时间可以增加信噪比,使图像清晰。软件上有个选项可以把过曝的区域显示出来。 当然,...
  • 增益 Gain DB

    2020-09-28 11:39:00
    工业相机不同增益时图像的成像质量不一样,增益越...其中曝光和增益是直接控制传感器(CCD/CMOS)上读出来的数据,是要优先调节的,以调节曝光时间为主。 Reference 1https://www.sohu.com/a/229540211_793144 ...
  • 图像亮度主要由光圈、曝光时间、ISO三者共同决定。 光圈控制进光量;曝光时间感光芯片光子采样时间;ISO增益为了使我们更好理解这三个概念,这里用水池蓄水的模型来解释它们。首先,我们把图片亮度(感光芯片成像的进...
  • 在isp流程中有自动曝光(AEC),自动曝光可以可以通过调节 模拟增益,数字增益曝光时间,光圈大小来调剂曝光,其中对于模拟增益和数字增益的区别为: 模拟增益是由硬件实现的,数字增益是通过isp平台可以人为加进去...
  • 本文提出了一种能够处理自动曝光视频序列的在线光度校准方法,能够从连续帧中恢复曝光时间,相机的响应函数,由渐晕引起的传感器辐照度衰减因子。利用鲁棒的增益KLT特征跟踪获得点的对应关系...
  • 系统增益是电荷耦合器件(CCD)的重要技术参数之一,它是测定量子效率、读出...同时还改变曝光时间的测量方式进行了对比,两种方法的标定结果基本一致,验证了本方案的准确性。最后,对标定结果进行了不确定度评定。
  • ov7620的配置代码,即完成ov7620的配置功能齐全,可以自动设置曝光时间,可以设置自动增益
  • 波谷java_2020-12-08

    2021-03-18 00:26:13
    3A+ISP之AE篇转载于3A+ISP之AE篇关于AE(Auto Exposure)AE算法思想和曝光量... 可见,AE的输入为当前影像的亮度值Y,输出为sensor的曝光时间和增益,isp增益和镜头光圈(如果镜头光圈可调)。当AE algorithm得到当前...
  • 海思平台ISP的ae的简介

    千次阅读 2019-09-09 19:00:31
    光圈优先时算法会优先调整光圈到合适的位置,再分配曝光时间和增益,只适合 p-iris 镜头,这样能均衡噪声和景深。快门优先时算法会优先分配曝光时间,再分配 sensor 增益和 ISP 增益,这样拍摄的图像噪声会比较小...
  • 3A+ISP之AE篇

    2020-09-16 09:04:36
    可见,AE的输入为当前影像的亮度值Y,输出为sensor的曝光时间和增益,isp增益和镜头光圈(如果镜头光圈可调)。当AE algorithm得到当前帧的亮度后,便会与target Y做比较,然后计算出下一次需要调整的参数,以便让...
  • 前面主要介绍的是:V4L2 的一些设置接口,如亮度,饱和度,曝光时间,帧数,增益,白平衡等。今天看看V4L2 得到数据的几个关键ioctl,Buffer的申请数据的抓取。 1. 初始化 Memory Mapping 或 User Pointer I/...
  • 前面主要介绍的是:V4L2 的一些设置接口,如亮度,饱和度,曝光时间,帧数,增益,白平衡等。今天看看V4L2 得到数据的几个关键ioctl,Buffer的申请数据的抓取。 1. 初始化 Memory Mapping 或 User Pointer I/O. ...
  • 需求使用OpenCV做功能,播放摄像头(usb网络),对摄像头设备进行参数调整(亮度、对比度、饱和度、色调、增益曝光度)调节,拍照录像。原理 使用OpenCV打开摄像头(可打开USB网路哦摄像头),渲染图像显示,可...
  • 前面主要介绍的是:V4L2 的一些设置接口,如亮度,饱和度,曝光时间,帧数,增益,白平衡等。今天看看V4L2 得到数据的几个关键ioctl,Buffer的申请数据的抓取。 1. 初始化 Memory Mapping 或 User ...
  • 曝光时间,帧数,增益。白平衡等。今天看看V4L2 得到数据的几个关键ioctl,Buffer的申请数据的抓取。 1. 初始化 Memory Mapping 或 User Pointer I/O. int ioctl(int fd, int requestbuf, struct v4l2_...
  • 前面主要介绍的是:V4L2 的一些设置接口,如亮度,饱和度,曝光时间,帧数,增益,白平衡等。今天看看V4L2 得到数据的几个关键ioctl,Buffer的申请数据的抓取。 1. 初始化 Memory Mapping 或 User ...

空空如也

空空如也

1 2 3 4
收藏数 75
精华内容 30
关键字:

曝光时间和曝光增益