攝像頭OV7670與OV7620對比

2021-08-03 22:52:12 字數 3377 閱讀 8876

ov7725**程式設計 使用

**購買

**二:7670

資料:**購買

ov7620 **程式設計 使用

**三:7620

購買鏈結

帶不帶,fifo自己問客服。

如今,市場上提到可以應用在智慧型車上的攝像頭,多如牛毛。到底那一款最適合用在智慧型車上呢,這裡demok選取了2款典型的攝像頭ov7670與ov7620,從其特性和效能等角度,剖析攝像頭的特點,為大家揭開迷霧。

我們開門見山,先講其最主要的不同點。我們都知道,ov7670和ov7620都是彩色攝像頭,其感光畫素為640*480的數字攝像頭。他們之間有很多相似的引數,但是最大的不同就是,ov7670的畫素輸出格式為rgb565,而ov7620的畫素輸出格式為yuv422,這個不同點直接決定了其在智慧型車攝像頭中的地位。在繼續進行分析之前,我們先了解一點攝像頭的小知識。

【攝像頭小知識】rgb565與yuv422的區別

1.什麼是rgb565

眾所周知,rgb是組成彩色的三基色,要想顯示乙個畫素的顏色,每個畫素都需要3個byte資料的r、g、b來表示,那一副320*240的彩色影象,就需要320*240*3=230400b=225kb的資料來儲存,這樣看來,儲存影象的空間開銷是極大的。而在乙個畫素rgb中,g分量的比重是最大的,r和b的比重相對小一些,因此人們又想出了用r:g:b=5:6:5的比例關係,來表示乙個畫素,這樣一來,乙個畫素僅僅需要2個byte就可以表示其彩色資訊(這個2個byte中,r佔5bit,g佔6bit,b佔5bit),320*240的彩色影象的儲存空間也由225kb減小到150kb。

2.rgb565是怎麼儲存的

攝像頭的資料是在每乙個pclk的上公升沿去讀取的。若攝像頭預設輸出的格式為rgb565,那麼攝像頭在上電之後,每觸發2個pclk,讀取2個位元組,才是乙個畫素。在這個畫素中,rgb的分布如下圖所示:在第乙個位元組(first byte)中,y[7..3]為r[4..0],y[2..0]為g[5..3];在第二個位元組(second byte)中,y[7..5]為g[2..0],y[4..0]為b[4..0]

2.什麼是yuv4:2:2

人的眼睛對低頻訊號比對高頻訊號具有更高的敏感度,事實上,人的眼睛對明視度的改變比對色彩的改變要敏感的多。因此,人們將rgb三色訊號改為yuv來表示,其中y為灰度,uv為色差。如果是表示一副彩色影象,同樣的道理,yuv444是無損的儲存方式,但是需要3個位元組,儲存空間開銷很大。由於y分量比uv分量重要的多,因此人們用yuv422來表示。這樣一來影象被壓縮了很多,乙個位元組就可以表示其彩色的資訊。

回歸到ov7670和ov7620的對比中來。

剛才從小知識中,了解到ov7670是rgb輸出,而ov7620是yuv輸出,雖然理論上明白了,但是大家可能還不知道實際對應攝像頭是怎麼輸出的。

對於ov7670,由於它只有一組並行的資料口y[7:0],所有的畫素資料都從這個資料口出,因此每次讀取一次資料口,可以讀乙個位元組(byte)。下圖給出了k個畫素(2k個位元組)輸出的格式。

對於ov7620,它有2組並行的資料口y[7..0]和uv[7..0],其中對於資料口y[7..0],輸出的是灰度值y,對於uv[7..0]輸出的色度訊號uv。下圖給出了k個畫素(k個位元組)輸出的格式。

上面2個圖已經非常明了的說明了兩者輸出格式的不同,現在對其優劣性做一下總結。

對於智慧型車競賽,賽道是白底黑線,因此我們只關心影象的灰度值,並不是需要他們的彩色值。由此看來,對於ov7670,它只有一組資料口,預設輸出rgb彩色影象,對我們來說並不是想要的;而對於ov7620,它有兩組資料口,一組資料口輸出的正是灰度值y,我們無需去管uv引腳輸出的訊號,只採集y口的資料,就能完美地體現出賽道的資訊來。對於全白的賽道背景,採集回來的資料是255,對於黑色的賽道,採集回來的資料是0,這樣就能很好的區別開賽道與背景。

由此可以總結,ov7620更適合做智慧型車攝像頭。

不帶fifo的攝像頭和帶fifo攝像頭的區別:

帶fifo的攝像頭比不帶的多了個3m的快取,可將採集的資料暫存在這個快取中,使用時讀取快取中的影象資料即可,因此可減少對微控制器採集影象資料時對mcu速度的要求。(例程以rgb565方式存放影象資料)

cmos攝像頭相比其它感測器而言,有難度,涉及東西較多,請在購買和使用前,多做評估和調研,再行決定

ov7670 fifo攝像頭,將影象感測器和影象緩衝器件al422b有機結合,解決了低端微控制器影象採集的速度瓶頸問題。基本使用原理如圖:

使用者只需要按上圖中fifo讀取資料的時序,控制相關的引腳,可以直接由mcu的io口讀取資料後,將資料放入記憶體或者送入屏記憶體顯示,可以由低速mcu操作控制,並可對資料進行簡單處理,如黑白識別等。

fifo攝像頭出廠前檢測,目的是保證質量,以防止出現問題給雙方帶來各種麻煩。

ov7670帶fifo模組介紹

1.簡介:

ov7670帶fifo模組,是針對慢速的mcu能夠實現影象採集控制推出的帶有緩衝儲存空間的一種模組。這種模組增加了乙個fifo(先進先出)儲存晶元,同樣包含30w畫素的cmos影象感光晶元,3.6mm焦距的鏡頭和鏡頭座,板載cmos晶元所需要的各種不同電源(電源要求詳見晶元的資料檔案),板子同時引出控制管腳和資料管腳,方便操作和使用。

如圖,控制感測器所需的管腳定義如下:

3v3—–輸入電源電壓(推薦使用3.3,5v也可,但不推薦)

gdn—–接地點

sio_c—sccb介面的控制時鐘(注意:部分低微控制器需要上拉控制,和i2c介面類似)

sio_d—sccb介面的序列資料輸入(出)端(注意:部分低微控制器需要上拉控制,和i2c介面類似)

vsync—幀同步訊號(輸出訊號)

href—-行同步訊號(輸出訊號,一般可以不適用,特殊情況使用)

d0-d7—資料埠(輸出訊號)

reste—復位埠(正常使用拉高)

pwdn—-功耗選擇模式(正常使用拉低)

strobe—拍照閃光控制埠(正常使用可以不需要)

fifo_rck—fifo記憶體讀取時鐘控制端

fifo_wr_ctr—-fifo寫控制端(1為允許cmos寫入到fifo,0為禁止)

fifo_oe—-fifo關斷控制

fifo_wrst—fifo寫指標復位端

fifo_rrst—fifo讀指標復位端

3.控制方式說明

由於採用了fifo 做為資料緩衝,資料採集大大簡便,使用者只需要關心是如何讀取即可,不需要關心具體資料是如何採集到的,這樣可減小甚至不用關心cmos的控制以及時序關係,就能夠實現影象的採集。

攝像頭 Ov965x 驅動分析

攝像頭 ov965x 驅動分析 本人喜歡用 偽 的方式寫筆記。文中的花括號可能是方便記錄而已。如 hw get module led hardware module id,const hw module t module open s3c fimc open ioctl ops s3c fimc v...

OV 2640 攝像頭除錯問題

ov2640攝像頭使用 sccb 協議進行傳輸,很多說該協議 與 i2c 協議類似 或 相同,但是通過踩坑後發現還是有些細微的差別,踩坑情況和下面博主相同 下面記錄下內容 sccb讀寫邏輯 ov2640寫位址0x60 轉化為8bit裝置位址 寫暫存器 start 0x60 暫存器id 資料 stop...

攝像頭 Ov965x 驅動分析

本人喜歡用 偽 的方式寫筆記。文中的花括號可能是方便記錄而已。如 hw get module led hardware module id,const hw module t module open s3c fimc open ioctl ops s3c fimc v4l2 ops,是對v4l2的所...