<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

FPGA ISP Bayer與常見顏色空間轉換介紹

Comtech FPGA ? 來源:Comtech FPGA ? 2023-01-16 15:57 ? 次閱讀

前言

FPGA實現ISP(Image Signal Processor)過程中,在圖像接收、處理、傳輸過程中往往會接觸到各種各樣的圖像格式,比如接收圖像可能是原始RAW數據,驅動LCD顯示器需要RGB格式,HDMI/SDI顯示需要YUV格式等。各種圖像格式之間可能涉及到相互轉換,本文簡單介紹幾種常見的圖像格式以及Xilinx FPGA實現方式。

Bayer圖像

ISP通常是從接收到CMOS/CCD的圖像信號開始,對于彩色圖像傳感器,輸出圖像格式可能是RGB、YUV或Bayer。為了降低成本,絕大部分的彩色圖像傳感器采用彩色濾鏡陣列(color filter array,CFA)的方式捕獲彩色圖像,因此輸出Bayer格式的Sensor最為常見。 典型Bayer圖像的成像過程如下圖所示。

c925c960-9571-11ed-bfe3-dac502259ad0.png

圖2-1CFA示意圖(圖片來自wikipedia)

隨著技術的發展,也有一些其他濾鏡的Sensor出現,如RGBW、EXR、X-Trans等,如下圖所示。

c93900ca-9571-11ed-bfe3-dac502259ad0.png

圖2-2RGBW、Fujifilm “EXR”、“X-Trans”示意圖(圖片來自wikipedia)

通過上圖可以發現,這些濾鏡中,綠色的分量最多。這是因為人眼對綠色最為敏感,所以保留最多的綠色分量。

Demosaic

Bayer圖像采集到FPGA以后,每個像素只有一種顏色分量。以Sony IMX290為例,輸出圖像的bayer格式如下圖所示:

ca6a2d02-9571-11ed-bfe3-dac502259ad0.png

圖3-1SonyIMX290 Pixel Arrangement

此時,如果將采集到的1920x1080圖像以灰度展示,由于CFA的原因,圖像會呈現一種馬賽克現象,如下圖所示:

ca8524ae-9571-11ed-bfe3-dac502259ad0.png

圖3-2Bayerimage

所以將Bayer轉成RGB的過程又稱為Demosaic(去馬賽克)。 每一個像素僅包含光譜的一部分,需要通過插值來填充每個像素的RGB分值。為了從Bayer格式得到每個像素的RGB格式,需要通過插值對每個像素填補缺失的兩個顏色分量。插值的方法有很多(包括近鄰、雙線性等)。 插值后可以得到RGB圖像:

caaf760a-9571-11ed-bfe3-dac502259ad0.png

圖3-3Bayerto RGB

需要注意的是,Bayer圖像根據第一個像素的顏色分量有4種排列方式,分別為GRBG、RGGB、BGGR、GBRG:

cc2ecc60-9571-11ed-bfe3-dac502259ad0.png

圖2-4Bayer4種排列方式

如果輸入Bayer的排列與IP core配置中插值的排列方式不同,則圖像顏色會錯亂。

cc4f7690-9571-11ed-bfe3-dac502259ad0.png

圖3-5Bayer排列方式與Demosaic配置不一致

RGB/YUV顏色空間轉換

YUV是一種顏色模型。它對彩色圖像或視頻進行編碼時考慮到了人類的感知,與 "直接 "的RGB表示相比,允許減少色度成分的帶寬。YUV模型定義了一個亮度分量(Y),代表物理線性空間的亮度,以及兩個色度分量,分別稱為U和V。它可以用來與RGB或其他色域空間進行相互轉換。 同樣常見的還有YCbCr,但是在實際中,往往是把YUV和YCbCr認為是同一種色域,只有模擬和數字的區別。我們一般也統稱為YUV。

由于YUV色域相比于RGB帶寬更低,所以經常見于圖像接口,如BT656、BT1120、HDMI等。也由于YUV亮度與色度分開的特性,許多圖像增強算法也基于YUV來設計,如3D降噪、邊沿增強等。 YUV于RGB顏色空間的轉換可由公式表現,不同的標準如ITU601.SDTV、ITU709.PAL/NTSC參數略有不同。

cc8bee0e-9571-11ed-bfe3-dac502259ad0.png

圖4-1BT.601標準

ccaa6384-9571-11ed-bfe3-dac502259ad0.png

圖4-2BT.709標準

根據以上公式,可以由RGB圖像得到YUV,此時YUV有三個通道,圖像大小相比于RGB沒有變化,我們通常稱之為YUV444。

ccc76042-9571-11ed-bfe3-dac502259ad0.png

圖4-3RGBto YUV444

由于人眼對亮度敏感而對色度不敏感的特點,因此在YUV格式中減少了UV的數據量,在不影響用戶觀看的情況下有效的壓縮了總體的數據量。所以YUV與RGB格式相比,占用更少的存儲空間,相對應的在傳輸過程中也會減少帶寬的消耗量。常見的YUV格式有YUV444、YUV422、YUV420等。

ccf2f87e-9571-11ed-bfe3-dac502259ad0.png

圖4-4Chromasubsampling示意圖(圖片來自wikipedia)

延伸

在RGB轉YUV的過程中,我們通??梢约右粋€系數,作為比例因子放大和縮小UV的分量,達到調節圖像飽和度的目的。以8bit圖像深度為例,比例因子為r,公式如下:

Cb=U*r+128;

Cr= V*r+128;

調整比例因子r,能得到不同色彩飽和度的圖像。

cd02cdd0-9571-11ed-bfe3-dac502259ad0.png

圖5-1 飽和度設置效果

RGB/YUV的顏色空間轉換并非完全無損。FPGA運算精度有限,多次轉換可能導致顏色失真,尤其是當轉入轉出標準不同時,會引入累積誤差。 比如網絡上流傳的有趣的表情包、梗圖,在傳來傳去的過程中,網絡平臺可能會反復壓縮、解壓,而顯示基于RGB,壓縮基于YUV,所以對圖片不斷地進行RGB/YUV轉換。雖然每次轉換損失輕微,但久而久之,在不斷取整的過程中,Y、U、V三個值就會不斷減小,Y讓圖像越來越暗,UV讓圖像越來越向綠偏移。

cd44cc30-9571-11ed-bfe3-dac502259ad0.png

圖5-2模擬“電子包漿”

AMD-Xilinx FPGA實現

對于Demosaic,Xilinx提供IPcore供用戶調用,用戶可根據應用場景以及資源開銷選擇對應的插值方式,Fringe TolerantInterpolation或者HighResolution Interpolation,支持RGB bayer和CMY bayer兩種格式。詳細說明參考Xilinx官網PG286。 IP接口如下圖所示:

cd65861e-9571-11ed-bfe3-dac502259ad0.png

圖6-1XilinxDemosaic IP core

對于RGB與YUV的顏色空間轉換或YUV444/YUV422/YUV420之間的轉換,Xilinx也提供了IP core供用戶調用。詳細說明參考Xilinx官網PG231。

IP接口以及配置方式如下圖所示:

cd829dee-9571-11ed-bfe3-dac502259ad0.png

cda56266-9571-11ed-bfe3-dac502259ad0.png

圖6-2XilinxVPSS IP core

Xilinx提供的VPSS(Video Processing Subsystem),可以很方便地對RGB、YUV444、YUV422、YUV420進行互轉。RGB與YUV的互轉公式如下:

YUV to RGB:

B = Y + ((Cb * 2081)>> 10)

Cr = V -(1<<(HSC_BITS_PER_COMPONENT-1))

Cb = U -(1<<(HSC_BITS_PER_COMPONENT-1))

R = Y + ((Cr *1733) >> 10)

G = Y - ((Cb * 404+ Cr * 595) >> 10)

RGB to YUV:

V =(1<<(HSC_BITS_PER_COMPONENT-1)) + (((R-Y)*898)>>10)

Y = (306*R + 601*G+ 117*B)>>10

U =(1<<(HSC_BITS_PER_COMPONENT-1)) + (((B-Y)*504)>>10)

其中HSC_BITS_PER_COMPONENT = C_MAX_DATA_WIDTH (這里C_MAX_DATA_WIDTH可以由用戶通過GUI設置。)

綜上,使用這兩個IP即可基于Xilinx FPGA快速實現Bayer與常見顏色空間轉換。





審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1602

    文章

    21326

    瀏覽量

    593216
  • LCD顯示器
    +關注

    關注

    0

    文章

    85

    瀏覽量

    19983
  • ISP
    ISP
    +關注

    關注

    6

    文章

    457

    瀏覽量

    50847
  • RAW
    RAW
    +關注

    關注

    0

    文章

    20

    瀏覽量

    3748

原文標題:FPGA ISP Bayer與常見顏色空間轉換

文章出處:【微信號:Comtech FPGA,微信公眾號:Comtech FPGA】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    基于CPLD/FPGA視頻顏色空間轉換電路的設計

    基于CPLD/FPGA視頻顏色空間轉換電路的設計
    發表于 05-02 12:21

    ISP處理流程及應用場景

    )、Bayer 噪聲去除、 白平衡( awb) 矯正、 色彩矯正( color correction) 、 gamma 矯正、 色彩空間轉換( RGB 轉換為 YUV) 、 在 YUV
    發表于 09-25 15:11

    基于FPGA的rgb與yuv顏色空間轉換

    `基于FPGA的rgbtoyuv顏色空間轉換一、概述 一般來說,攝像頭輸出的格式有RGB、YUV(Ycbcr)RAW圖像格式,大部分圖像算法都是基于灰度圖像的,因此在輸出格式為rgb時
    發表于 03-03 17:59

    YCbCr色彩空間和RGB色彩空間之間的轉換方法介紹

    摘要:文章介紹了YCbCr色彩空間和RGB色彩空間之間的轉換的方法,實現了不同規模以及不同數據結構的YCbCr到RGB的快速硬件轉換。采用數
    發表于 07-01 06:41

    基于FPGA視頻處理系統的顏色空間轉換

    針對目前視頻處理系統中應用比較廣泛的YCbCr 4:2:0格式的數據,提出了一種在硬件上實現顏色空間轉換的設計,解決了色度信號的插值操作和插值后數據流的重組問題,并在FPGA上采用Ve
    發表于 07-28 17:23 ?38次下載

    常見顏色模式HSB/RGB/CMYK詳細介紹

    常見顏色模式HSB/RGB/CMYK詳細介紹 顏色模式決定了用于顯示和打印圖像的顏色模型,它決定了如何描述和重現圖像的色彩。
    發表于 02-23 13:45 ?5298次閱讀

    基于FPGABayer到RGB圖像格式轉換設計

    基于FPGABayer到RGB圖像格式轉換設計
    發表于 08-29 16:05 ?35次下載

    圖像處理的顏色空間及其OpenCV實現

    對圖像的顏色空間做了一個概念性的介紹,并通過代碼的方式可視化了每種顏色空間的每個通道所表示的意義。 ? 文章內容包括: 什么是
    的頭像 發表于 12-25 11:36 ?1476次閱讀

    圖像的顏色空間及其OpenCV實現

    對圖像的顏色空間做了一個概念性的介紹,并通過代碼的方式可視化了每種顏色空間的每個通道所表示的意義。 ? 文章內容包括: 什么是
    的頭像 發表于 12-26 11:33 ?1793次閱讀
    圖像的<b class='flag-5'>顏色</b><b class='flag-5'>空間</b>及其OpenCV實現

    如何使用FPGA實現Bayer到RGB圖像格式轉換的設計

    利用FPGA處理數據量大、處理速度快,結合CMOS圖像傳感器MT9M001和BayerCFA格式圖像的特點,設計一種基于FPGA的圖像數據轉換處理系統,提出用硬件實現Bayer格式到R
    發表于 01-25 16:04 ?6次下載
    如何使用<b class='flag-5'>FPGA</b>實現<b class='flag-5'>Bayer</b>到RGB圖像格式<b class='flag-5'>轉換</b>的設計

    基于彩色MT9V034攝像頭 Bayer轉RGB FPGA實現

    1 圖像bayer格式介紹 bayer格式是伊士曼·柯達公司科學家Bryce Bayer發明的,Bryce Bayer所發明的拜耳陣列被廣泛
    的頭像 發表于 06-12 17:12 ?3113次閱讀
    基于彩色MT9V034攝像頭 <b class='flag-5'>Bayer</b>轉RGB <b class='flag-5'>FPGA</b>實現

    顏色空間有哪些類別 如何在OpenCV中實現

    對圖像的顏色空間做了一個概念性的介紹,并通過代碼的方式可視化了每種顏色空間的每個通道所表示的意義。
    的頭像 發表于 02-07 15:15 ?544次閱讀
    <b class='flag-5'>顏色</b><b class='flag-5'>空間</b>有哪些類別 如何在OpenCV中實現

    圖像Bayer格式介紹及差值原理

    Bayer俗稱為“拜耳陣列”,是實現 CCD 或 CMOS?傳感器拍攝彩色圖像的主要技術之一,是伊士曼·柯達公司科學家Bryce Bayer發明的,并于1976年注冊專利,是工業相機領域中最為常見的彩色成像格式。
    的頭像 發表于 05-29 12:05 ?4802次閱讀
    圖像<b class='flag-5'>Bayer</b>格式<b class='flag-5'>介紹</b>及差值原理

    IP庫新增多種顏色轉換空間IP簡介

    顏色空間轉換是圖像及視頻中常用的解決方案,涉及hsv-rgb、rgb-ycrcb等一些常見顏色空間
    的頭像 發表于 07-17 08:48 ?1108次閱讀
    IP庫新增多種<b class='flag-5'>顏色</b><b class='flag-5'>轉換</b><b class='flag-5'>空間</b>IP簡介

    基于FPGABayer彩色自動白平衡設計

    電子發燒友網站提供《基于FPGABayer彩色自動白平衡設計.pdf》資料免費下載
    發表于 10-08 11:32 ?0次下載
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>Bayer</b>彩色自動白平衡設計
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>