环球电气之家-午夜精彩视频-中国专业电气电子产品行业服务网站!

產品分類

當前位置: 首頁 > 傳感測量產品 > 工業傳感器 > 圖像傳感器

類型分類:
科普知識
數據分類:
圖像傳感器

傳感器白平衡:CMOS圖像傳感器白平衡數字處理電路設計

發布日期:2022-10-09 點擊率:114


傳感器白平衡:CMOS圖像傳感器白平衡數字處理電路設計  第1張

傳感器白平衡:CMOS圖像傳感器白平衡數字處理電路設計

摘要:

CMOS圖像傳感器與CCD相比,由于能將時序處理電路和圖像信號的前端放大與數字化部分以及圖像集成于一個芯片內,因此其的發展一直受到業界的高度重視。并且它以其低廉的價格、較好的圖像質量、高集成度和相對較少的功耗,在視頻監控、多媒體領域得到更加廣泛的應用。 本文闡述了針對單片CMOS圖像傳感器中數字預處理電路自動白平衡算法模塊(AWB)的設計與實現。因為是單片系統設計,要求電路設計具備規模小,消耗資源少,功耗小,以及方便移植等特點。通過對前人提出的自動白平衡算法的MATLAB仿真比較,兼顧實現復雜度和處理效果兩方面因素,本文提出了一種灰色世界和理想反射鏡相結合的方法進行顏色校正。兩種算法的結合互補,使得本算法的適用范圍得到擴展,一定程度上彌補了兩種算法各自的不足。使用這種算法不需要存儲圖像便能完成白平衡增益的計算。為了節約資源和滿足實時性,本設計中規劃了算法中統計區域和運算區域,并通過狀態機控制一個除法器做連續除法運算。為了提高電路的適用頻率范圍,增強設計的可移植性,在數據處理部分采用了流水線乘法器。為了進一步降低功耗,設計中還采用了隔幀啟動白平衡機制。設計采用Verilog硬件描述語言進行各子模塊的設計,并用MATLAB和Verilog結合的方法生成測試激勵源,對設計進行驗證。通過在不同色溫環境下的測試,本設計對圖像偏色有較好的校正效果。

展開
傳感器白平衡:CMOS圖像傳感器白平衡數字處理電路設計  第2張

傳感器白平衡:自動駕駛傳感器之攝像頭(八)車載攝像頭色彩白平衡

展開全文
作者 / 阿寶
編輯 / 阿寶
出品 / 阿寶1990
色溫定義
色溫的定義:將黑體從絕對零度開始加溫,溫度每升高一度稱為1開氏度(用字母K來表示),當溫度升高到一定程度時候,黑體便輻射出可見光,其光譜成份以及給人的感覺也會著溫度的不斷升高發生相應的變化。于是,就把黑體輻射一定色光的溫度定為發射相同色光光源的色溫。
常見光源色溫:
  光源                           色溫(K)
鎢絲燈(白熾燈)                   2500-3200k
碳棒燈                                  4000-5500k
熒光燈(日光燈,節能燈)      4500-6500k
氙燈                                      5600 k
炭精燈                                   5500~6500k
日光平均                                5400k
有云天氣下的日光                    6500-7000k
陰天日光                                -k
隨著色溫的升高,光源的顏色由暖色向冷色過渡,光源中的能量分布也由紅光端向藍光端偏移。
值得注意的是,實際光源的光譜分布各不相同,而色溫只是代表了能量的偏重程度,并不反映具體的光譜分布,所以即使相同色溫的光源,也可能引起不同的色彩反應。
人眼及大腦對色溫有一定的生理和心理的自適應性,所以看到的顏色受色溫偏移的影響較小,而camera的sersor沒有這種能力,所以拍出來的照片不經過白平衡處理的話,和人眼看到的顏色會有較大的偏差(雖然人眼看到的和白光下真實的色彩也有偏差)。
太陽光色溫隨天氣和時間變化的原因,與不同頻率光的折射率有關:
波長長的光線,折射率小,透射能力強,波長短的光線,折射率大,容易被散射,折射率低,這也就是為什么交通燈用紅色,防霧燈通常是黃色,天空為什么是藍色的等等現象的原因。
知道了這一點,太陽光色溫變化的規律和原因也就可以理解和分析了。
色溫變化時的色彩校正
所以從理論上可以看出,隨著色溫的升高,要對色溫進行較正,否則,物體在這樣的光線條件下所表現出來的顏色就會偏離其正常的顏色,因此需要降低sensor對紅色的增益,增加sersor對藍光的增益。
同時在調整參數時一定程度上要考慮到整體亮度的要保持大致的不變,即以YUV來衡量時,Y值要基本保持不變,理論上認為可以參考RGB->YUV變換公式中,RGB三分量對Y值的貢獻,從而確定RGAIN和BGAIN的變化的比例關系。但實際情況比這還要復雜一些,要考慮到不同sensor對R,B的感光的交叉影響和非線性,所以最佳值可能和理論值會有一些偏差。
自動白平衡處理
自動白平衡是基于假設場景的色彩的平均值落在一個特定的范圍內,如果測量得到結果偏離該范圍,則調整對應參數,校正直到其均值落入指定范圍。該處理過程可能基于YUV空間,也可能基于RGB空間來進行。對于Sensor來說,通常的處理方式是通過校正R/B增益,使得UV值落在一個指定的范圍內。從而實現自動白平衡。
特殊情況的處理
在自動白平衡中,容易遇到的問題是,如果拍攝的場景,排除光線色溫的影響,其本身顏色就是偏離平均顏色值的,比如大面積的偏向某種顏色的圖案如:草地,紅旗,藍天等等,這時候,強制白平衡將其平均顏色調整到灰色附近,圖像顏色就會嚴重失真。
因此,通常的做法是:在處理自動白平衡時,除了做為目標結果的預期顏色范圍外,另外再設置一對源圖像的顏色范圍闕值,如果未經處理的圖像其顏色均值超出了該闕值的話,根本就不對其做自動白平衡處理。由此保證了上述特殊情況的正確處理。
可見,這兩對闕值的確定對于自動白平衡的效果起著關鍵性的作用。
某平臺的例子
可以看到隨著色溫的升高,其變化規律基本符合上節中的理論分析。不過這里多數參數與理論值都有一些偏差,其中日光燈的色溫參數設置與理論值有較大的偏差,實際效果也證明該日光燈的參數設置使得在家用日光燈環境下拍攝得到的照片顏色偏藍。修改其參數后實拍效果明顯改善。(再查一些資料可以看到通常會有兩種熒光燈色溫 4000 和 5000K,目前所接觸到的應該是5000K居多)
具體參數的調整,應該在燈箱環境下,使用各種已知色溫的標準光源對標準色卡拍攝,在Pc機上由取色工具測量得到其與標準色板的RGB分量上的色彩偏差,相應的調整各分量增益的比例關系。為了更精確的得到結果,曝光量增益的設置在此之前應該相對準確的校正過。
亮度及曝光控制篇
感光寬容度
從最明亮到最黑暗,假設人眼能夠看到一定的范圍,那么膠片(或CCD等電子感光器件)所能表現的遠比人眼看到的范圍小的多,而這個有限的范圍就是感光寬容度。
人眼的感光寬容度比膠片要高很多,而膠片的感光寬容度要比數碼相機的ccd高出很多!了解這個概念之后,我們就不難了解,為什么在逆光的條件下,人眼能看清背光的建筑物以及耀眼的天空云彩。而一旦拍攝出來,要么就是云彩顏色絢爛而建筑物變成了黑糊糊的剪影,要么就是建筑物色彩細節清楚而原本美麗的云彩卻成了白色的一片。
再看人眼的結構,有瞳孔可以控制通光量,有桿狀感光細胞和椎狀感光細胞以適應不同的光強,可見即使人眼有著很高的感光寬容度,依然有亮度調節系統,以適應光強變化。
那么對于camera sensor來說,正確的曝光就更為重要了!
自動曝光和18%灰
對于sensor來說,又是如何來判斷曝光是否正確呢?很標準的做法就是在YUV空間計算當前圖像的Y值的均值。調節各種曝光參數設定(自動或手動),使得該均值落在一個目標值附近的時候,就認為得到了正確的曝光。
那么如何確定這個Y的均值,以及如何調整參數使得sensor能夠將當前圖像的亮度調整到這個范圍呢?
這就涉及到一個概念 18%灰,一般認為室內室外的景物,在通常的情況下,其平均的反光系數大約為18%,而色彩均值,如前所述,可以認為是一種中灰的色調。這樣,可以通過對反光率為18%的灰板拍攝,調整曝光參數,使其顏色接近為中等亮度的灰色(Y值為128)。然后,對于通常的景物,就能自動的得到正確的曝光了。
當然這種自動判斷曝光參數的AE功能不是萬能的,對于反光率偏離通常均值的場景,比如雪景,夜景等,用這種方法就無法得到正確的曝光量了。所以在sensor的軟件處理模塊中,通常還會提供曝光級別的設定功能,強制改變自動曝光的判斷標準。比如改變預期的亮度均值等。
曝光參數的調整
曝光強度的調整,可以通過改變曝光時間,也可以通過改變亮度增益AG來實現。
曝光時間受到楨頻的限制,比如攝像時要求15幀每秒的話,這時候曝光時間最長就不能超過1/15s,可能還有別的條件限制,實際的曝光時間還要短,在光線弱的情況下,單獨調整曝光時間就無法滿足幀頻的需要了。
這時候還可以調整增益AG,來控制曝光的增益,降低曝光時間。但是,這樣做的缺點是以犧牲圖像質量為代價的,AG的增強,伴隨的必然是信噪比的降低,圖像噪聲的增強。
所以,以圖像質量為優先考慮的時候,曝光參數的調節通常是優先考慮調節曝光時間,其次在考慮曝光增益。當然曝光時間也不能過長以免由于抖動造成圖像的模糊,而在拍攝運動場景時,對曝光時間的要求就更高了。
參考資料:

傳感器白平衡:顏色傳感器白平衡調試問題

程序功能:AVR外部信號采集處理,使用PB0引腳口。選通不同顏色,用T2來計算PB0口256個上升沿的時間。
#ifndef COLOR_H
#define COLOR_H
#endif
#define S0      0
#define S1      1
#define S2      2
#define S3      3
#define LED     4
#define OUT     0
static volatile unsigned int timer=0;
static volatile unsigned int GC=0,BC=0,RC=0;//
static volatile char i=0;
unsigned char j=0;
volatile unsigned int rx=0,gx=0,bx=0;
//PA0   PA1 PA2 PA3 PA4 PB0
//S0    S1  S2  S3  LED OUT
//S3  S2
//0   0     紅(R)
//1   1     綠(G)
//1   0     藍(B)
//0   1     無
void Color_Mode(unsigned char color)
{
if(color=='R')//將濾波選擇為紅色,即S3:S2=0:0
{
PORTA   &=~((1<<s3)|(1<<s2)); }="" else="" if(color="='G')//將濾波選擇為綠色,即S3:S2=1:1" {="" porta="" |="(1<<S3)|(1<<S2);" &="~(1<<S2);" void="" color_ioinit()="" 將傳感器的s0,s1,s2,s3和led引腳設置成輸出高電平形式="" out設置成帶上拉電阻的輸入模式="" ddra="" 選擇輸出比例因子為100%,="" color_timer02init(void)="" 將定時器0設置成外部脈沖輸入模式pb0為外部脈沖輸入引腳="" timsk|="(1<<TOIE0);//T0中斷使能" tccr0|="(1<<CS02)|(1<<CS01)|(1<<CS00);//將TCCR0的第三位全部設置成1,上升沿有效" tcnt0="0;//將計數器初始化為0" 定時器2溢出中斷="" isr(timer2_ovf_vect)="" timer++;="" 計數器0計數溢出中斷="" isr(timer0_ovf_vect)="" if((porta&0x0c)="=0x00)//選擇濾紅色" rc="timer*34.7222;" color_mode('g');="" 選擇濾綠色波="" i="0;" gc="timer*34.7222;" color_mode('b');="" 選擇濾藍色波="" bc="timer*34.7222;" color_mode('r');="" 選擇濾紅色波="" 轉換完后,關閉溢出中斷使能="" timsk&="~(1<<TOIE0);" tccr0&="~(1<<CS02)|(1<<CS01)|(1<<CS00);" tccr2&="~((1<<CS22)|(1<<CS21)|(1<<CS20));" timer="0;" tcnt2="0;" color_catchvalue()="" if(i="=1)" rx="RC;" gx="GC;" bx="BC;" #include="" #include"uart.h"="" #include"util="" delay.h"="" #include"color.h"="" int="" main(void)="" uartinit();="" color_ioinit();="" color_timer02init();="" printf("it="" is="" running");="" while(1)="" color_catchvalue();="" return="" 0;="" 結果顯示:="" 結果分析:="" 當t0中斷產生,第一個if語句中的timer總是為0,即使改變if順序也是如此。求解釋。=""

傳感器白平衡:顏色識別傳感器 TCS230的白平衡和比例因子淺談。

<div class="" 0="" 本帖最后由="" linchenfeng="" 于="" 2016-10-10="" 17:31="" 編輯="" 注:本文是對顏色傳感器白平衡和比例因子計算的介紹,和具體流程實現方法。="" 由于發現身邊同學有做有些設計的時候需要到顏色識別傳感器。但是對于其中的三個(rgb)的比例因子不知道怎么來的,是什么意思,或者怎么去計算調整。這里我簡單統一的做一下介紹。="" 首先,使用顏色識別傳感器的原理實際就是,三單元色的分析。因為任何顏色都可以由rgb這三種顏色混合而成。所以我們只要識別出這三種顏色的值,然后對應去查顏色鋪表,即可得出被測物的顏色。="" 再者,實際使用中,很多同學都是照搬網絡上的例程,發現對顏色的識別有很大的誤差或者誤識別。主要是因為歷程中的比例因子均是固定了的,而且同學們也不知道如何去修改。="" 因為不同條件下,比例因子是不同的。所以才有了白平衡的需要。="" 那么,什么是比例因子呢。我們知道在理論(認為無任何干擾光源下),白色對應的三基色(rgb)="" 都是="" 255。="" 而我們在實際中不可能是在無干擾的理論環境下。="" 那么這個白色也不是理論下的“白色”,那么對應rgb就不是255了。既然白色都是不是標準的了,那么其他顏色的rgb肯定就不是標準的了。所以,我們得知道一個調整參數,這個參數就是比例因子。="" 比如:在使用環境下,我們做白平衡,得到了rgb的值,分別是240,245,250,那么對應的比例因子就是240="" 255,245="" 255,250="" 這樣,我們在檢測其他顏色的時候,得到rgb參數后,分別取乘上各自的比例因子。就可以得到更加真實的rgb值了。="" 然后,具體實現方法呢。="" 參考數據手冊。="" 里面介紹了兩種方法,第一種是脈沖計數到255,得到時間基數;第二種是固定時間采集脈沖然后通過正比例轉化為255,得到一個調整參數,也就是比例因子。="" 由于,網絡上基本都是采用第二種,我就介紹第二種方法。="" 個人實際上更加偏向第一種方法,更加的準確和可靠。="" 對第二種方法而言,傳感器正對白色物體(光源也可)首先我們設置一個固定時間,比如為10ms。然后我們通過依次選通傳感器的檢測基色(每個通道都是10ms),分別得到三個脈沖個數的值,比如紅色為x個脈沖,綠色為y個脈沖,藍色為z個脈沖。然后a為紅色比例因子,b為綠色比例因子,c為藍色比例因子,那么a="255/X,B=255/Y,C=Z/255。" 這樣我們就完成了比例因子的計算。="" 然后,我們檢測其他顏色的時候,(這里注意,如果我們是采用10ms做的基本時間,那么檢測任何顏色下,程序中的檢測時間也需要設置為10ms)。分別得到rgb后,再分別乘以上面計算的比例就可以得到更加準確的真實rgb值。="" 之后,我們把得到的rgb值,通過查表法對三原色值表進行查表,可以就可以得到具體是什么顏色。這里肯能有的同學要問了,不可能每個rgb值都剛好和表里的值對應啊。這里,我就要說,其實如果我們只是大概識別紅色,淺紅,深紅,這里我們已經可以實現。如果還要細分,那么可以這樣,得到的rgb值首先查遍,如果沒有剛好直接能夠匹配的,我們可以找到相近的兩個參數,然后通過插值法,再去判斷識別。="" 具體的rgb值表在網絡上可找到,實際程序中的查表法,可以使用二分法,插值法可以使用線性插值。僅僅個人建議。="" 最后,實際使用中,如果我們環境沒有發生變換只需要做一次白平衡就可以(也就是只計算一次比例因子),之后就用這個因子做處理就好了。="" 程序里面,我們可以設置一個命令或者按鍵,當用戶按下按下或者收到這個命令后,才做白平衡。="" 這里就介紹完了。希望對有疑問的朋友能夠有幫助。="" 不過,那種還是只會問要代碼的!別再來找我!!!!="" 只要你理解了,根據網絡上提供的代碼,然后稍微加修改就可以完成白平衡(比例因的計算)。="" 補充下:="" 針對第一種時基方式,實際上更加可靠。還是大概說下,白平衡時候,利用mcu的pca功能,分別去捕捉rgb的輸出脈沖,直到捕獲到255個。="" 然后計算出rgb分別輸出255個脈沖的時間(pca模式下,捕獲功能可以計算出時間的).="" 然后,這個三個時間t1,t2,t3,以后就是我們去檢測其他顏色輸出脈沖的限制時間。="" 舉例:檢測三原色中r的值,通過配置定時,比如配置為t1的時間長度,pca捕獲這個t1下輸出的脈沖個數,這個脈沖個數就是r真實值了。然后再把定時器配置為t2的時間長度,pca捕獲t2下的脈沖,這個值就是g的值,b同理。="" 1="" qq圖片.png="" (121.7="" kb,="" 下載次數:="" 29)="" (74.15="" 25)="" 17:25:38  ="" 評論="" 淘帖0="" 舉報="" 相關推薦=""

下一篇: PLC、DCS、FCS三大控

上一篇: 電氣控制線路圖控制原

主站蜘蛛池模板: CXB船用变压器-JCZ系列制动器-HH101船用铜质开关-上海永上船舶电器厂 | 【MBA备考网】-2024年工商管理硕士MBA院校/报考条件/培训/考试科目/提前面试/考试/学费-MBA备考网 | 【黄页88网】-B2B电子商务平台,b2b平台免费发布信息网 | 顺辉瓷砖-大国品牌-中国顺辉| 最新范文网_实用的精品范文美文网 | 空气弹簧|橡胶气囊|橡胶空气弹簧-上海松夏减震器有限公司 | 自动部分收集器,进口无油隔膜真空泵,SPME固相微萃取头-上海楚定分析仪器有限公司 | 磁粉制动器|张力控制器|气胀轴|伺服纠偏控制器整套厂家--台灵机电官网 | 振动筛,震动筛,圆形振动筛,振动筛价格,振动筛厂家-新乡巨宝机电 蒸汽热收缩机_蒸汽发生器_塑封机_包膜机_封切收缩机_热收缩包装机_真空机_全自动打包机_捆扎机_封箱机-东莞市中堡智能科技有限公司 | 企典软件一站式企业管理平台,可私有、本地化部署!在线CRM客户关系管理系统|移动办公OA管理系统|HR人事管理系统|人力 | 校园文化空间设计-数字化|中医文化空间设计-党建|法治廉政主题文化空间施工-山东锐尚文化传播公司 | 液压压力机,液压折弯机,液压剪板机,模锻液压机-鲁南新力机床有限公司 | 全自动在线分板机_铣刀式在线分板机_曲线分板机_PCB分板机-东莞市亿协自动化设备有限公司 | 兰州牛肉面加盟,兰州牛肉拉面加盟-京穆兰牛肉面 | 粘度计维修,在线粘度计,二手博勒飞粘度计维修|收购-天津市祥睿科技有限公司 | 底部填充胶_电子封装胶_芯片封装胶_芯片底部填充胶厂家-东莞汉思新材料 | 机械立体车库租赁_立体停车设备出租_智能停车场厂家_春华起重 | 作文导航网_作文之家_满分作文_优秀作文_作文大全_作文素材_最新作文分享发布平台 | 压缩空气冷冻式干燥机_吸附式干燥机_吸干机_沪盛冷干机 | 一体化净水器_一体化净水设备_一体化水处理设备-江苏旭浩鑫环保科技有限公司 | 数显恒温培养摇床-卧式/台式恒温培养摇床|朗越仪器 | 冰雕-冰雪世界-大型冰雕展制作公司-赛北冰雕官网 | 密封圈_泛塞封_格莱圈-[东莞市国昊密封圈科技有限公司]专注密封圈定制生产厂家 | 高压贴片电容|贴片安规电容|三端滤波器|风华电容代理南京南山 | 上海防爆真空干燥箱-上海防爆冷库-上海防爆冷柜?-上海浦下防爆设备厂家? | 建筑消防设施检测系统检测箱-电梯**检测仪器箱-北京宇成伟业科技有限责任公司 | 塑钢课桌椅、学生课桌椅、课桌椅厂家-学仕教育设备首页 | 螺杆泵_中成泵业| 量子管通环-自清洗过滤器-全自动反冲洗过滤器-沼河浸过滤器 | LOGO设计_品牌设计_VI设计 - 特创易 | 铝镁锰板_铝镁锰合金板_铝镁锰板厂家_铝镁锰金属屋面板_安徽建科 | 桂林腻子粉_内墙外墙抗裂砂浆腻子粉推荐广西鑫达涂料厂家供应 | 数控专用机床,专用机床,自动线,组合机床,动力头,自动化加工生产线,江苏海鑫机床有限公司 | 节流截止放空阀-不锈钢阀门-气动|电动截止阀-鸿华阀门有限公司 | 高低温老化试验机-步入式/低温恒温恒湿试验机-百科 | 企典软件一站式企业管理平台,可私有、本地化部署!在线CRM客户关系管理系统|移动办公OA管理系统|HR人事管理系统|人力 | 上海佳武自动化科技有限公司| 电机修理_二手电机专家-河北豫通机电设备有限公司(原石家庄冀华高压电机维修中心) | 示波器高压差分探头-国产电流探头厂家-南京桑润斯电子科技有限公司 | 生产加气砖设备厂家很多,杜甫机械加气砖设备价格公道 | 瓶盖扭矩测试仪-瓶盖扭力仪-全自动扭矩仪-济南三泉中石单品站 |