0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Alpha半透明圖像疊加設(shè)計

冬至子 ? 來源:新芯設(shè)計 ? 作者:新芯設(shè)計 ? 2023-10-09 10:42 ? 次閱讀

Alpha 通道是一個 **8 位的灰度通道,該通道采用 2^8 = 256 **級灰度來記錄圖像中的透明度信息,定義全透明、半透明和不透明區(qū)域,其中黑色表示全透明,白色表示不透明,灰色表示半透明。

Alpha 半透明圖像疊加算法就是假設(shè)一幅圖像是 A,另一幅圖像是 B,那么透過 B 去看 A,看上去的圖象 C 就是 B 和 A 的混合圖象。設(shè) B 圖像的透明度為 Alpha,Alpha 取值為 0 到 255 之間,255 為全透明,0 為不透明。Alpha 每個通道色彩混合公式如下:

圖片

RTL 代碼

//下文是 Alpha 半透明圖像疊加設(shè)計的核心 Verilog 代碼(輸入圖像像素格式為 RGB565)
assign Blend_Data_R = (((9'd256 - Alpha)*DataB_R+ Alpha*DataA_R));
assign Blend_Data_G = (((9'd256 - Alpha)*DataB_G+ Alpha*DataA_G));
assign Blend_Data_B = (((9'd256 - Alpha)*DataB_B+ Alpha*DataA_B));
always @(posedge clk) begin
    if(!rst_n) begin
        Blend_Data <= 16'd0;
    end
    else begin
        if(add_en)
            Blend_Data <= {Blend_Data_R[12:8],Blend_Data_G[13:8],Blend_Data_B[12:8]};
        else
            Blend_Data <= DataB;
    end
end


assign Area1 = ((x_pose > 259 && x_pose <= 359)&&(y_pose >209 && y_pose <= 309))? 1'b1 : 1'b0 ;
assign Addr  = (Area1)? (x_pose - 260) + 100*(y_pose - 210) : 16'b11111111_11111111 ;
assign Dout  = (Area1)? Blend_Data : 16'b11111111_11111111;
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Alpha
    +關(guān)注

    關(guān)注

    0

    文章

    45

    瀏覽量

    25538
  • Verilog語言
    +關(guān)注

    關(guān)注

    0

    文章

    113

    瀏覽量

    8206
收藏 人收藏

    評論

    相關(guān)推薦

    [原創(chuàng)]字符疊加器 視頻疊加模塊 低成本字符疊加器 OM808

    碼,適用于顯示漢字不太多的場合以及靜態(tài)視頻疊加。http://shop.avrvi.com/files/om808-cn.pdf可以疊加灰色半透明背景,也可以不疊加背景,購買時說明!本
    發(fā)表于 05-10 14:22

    VI上寫的程序運行起來的時候前面板看起來是透明半透明...

    VI上寫的程序運行起來的時候前面板看起來是透明半透明...
    發(fā)表于 08-11 09:21

    求51單片機顯示透明圖

    求51單片機顯示透明圖片,即把一個圖片疊加在另一個圖片上。
    發(fā)表于 08-22 09:50

    當(dāng)配置alpha 值為0x00時是不透明的;當(dāng)配置alpha值為 0xFF為 透明的,請問可以通過什么api去更改呢?

    本帖最后由 一只耳朵怪 于 2018-5-29 10:30 編輯 在使用DM8168 framebuffer的過程中我發(fā)現(xiàn):當(dāng)配置alpha 值為0x00時是不透明的;當(dāng)配置alpha值為
    發(fā)表于 05-28 05:42

    使用tvp7002輸出422圖像顏色轉(zhuǎn)換后出現(xiàn)半透明色帶的原因是什么?怎么去調(diào)試?

    后rtsp輸出,現(xiàn)在的問題是,圖像顯示基本正常,只有當(dāng)圖像源中有紅色出現(xiàn)的時候,輸出圖像會出現(xiàn)一條半透明的由深到淺的色帶,調(diào)試了各種跟顏色可能有關(guān)的參數(shù)都不能正常,現(xiàn)在可以肯定tvp7
    發(fā)表于 06-15 06:34

    請問AD里銅皮顯示半透明如何改到非透明

    AD里銅皮顯示半透明,怎么改到非透明?如圖
    發(fā)表于 04-22 07:35

    ili9341透明圖片顯示顏色不正的解決辦法有哪些?

    ili9341 透明圖片顯示顏色不正,只換ili9488的屏和驅(qū)動,其他函數(shù)不變,就能正常顯示。調(diào)了好幾天了也沒找到驅(qū)動哪里的問題,求大神解答
    發(fā)表于 04-22 22:04

    【正點原子FPGA連載】第八章基于OV5640的視頻圖像疊加實驗-領(lǐng)航者ZYNQ之HLS 開發(fā)指南

    的另一組圖像或視頻信號合并,使被疊加圖像信號與原視頻圖像信號在指定位置上同步顯示。圖像疊加過程
    發(fā)表于 10-13 17:06

    在linux下使用gstreamer顯示圖像出現(xiàn)黑色半透明的圖層是為什么?

    在imx6Q開發(fā)板上使用gstreamer的工具gst-launch(qt中調(diào)用gstreamer api也試過,也是如此)播放圖像,顯示出來在視頻的上方總是好像有一層黑色半透明的圖層在上面,請問
    發(fā)表于 01-10 06:15

    基于UPD6453的漢字信息視頻疊加設(shè)

    基于UPD6453的漢字信息視頻疊加設(shè)計 0 引言    字符疊加在閉路電視、圖像系統(tǒng)、車載視頻系統(tǒng)、公路收費系統(tǒng)中可以得到廣泛的應(yīng)用。UPD6453是NEC公司的字
    發(fā)表于 12-05 17:57 ?1822次閱讀
    基于UPD6453的漢字信息視頻<b class='flag-5'>疊加設(shè)</b>計

    基于FPGA的Alpha半透明圖像疊加算法硬件實現(xiàn)

    發(fā)表于 08-24 21:19 ?10次下載

    JAVA教程之半透明圖

    JAVA教程之半透明圖片,很好的JAVA的資料,快來學(xué)習(xí)吧
    發(fā)表于 04-11 17:14 ?1次下載

    matlab實現(xiàn)圖像疊加

    matlab基礎(chǔ)語言實現(xiàn)圖像疊加,可調(diào)透明度,可調(diào)圖像大小,可調(diào)疊加位置,用以參考
    發(fā)表于 04-19 09:39 ?9次下載

    半透明三維物體表面光澤真實感實時渲染方法

    針對具有半透明特性玉石的真實感渲染問題,提出一種利用高光層、漫反射層、透射層三層光照模型疊加的解決方法。首先對散射層結(jié)合漫反射剖面來模擬半透明玉石的次表面散射效果,提出一種可改變漫反射剖面的散射方法
    發(fā)表于 12-11 15:44 ?1次下載
    <b class='flag-5'>半透明</b>三維物體表面光澤真實感實時渲染方法

    Alpha半透明圖疊加算法Matlab+Verilog的設(shè)計實現(xiàn)

    Alpha通道是一個8位的灰度通道,該通道用256級灰度來記錄圖像中的透明度信息,定義透明、不透明半透
    的頭像 發(fā)表于 05-01 10:28 ?588次閱讀
    <b class='flag-5'>Alpha</b><b class='flag-5'>半透明圖</b>形<b class='flag-5'>疊加</b>算法Matlab+Verilog的設(shè)計實現(xiàn)