色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

Alpha半透明圖形疊加算法Matlab+Verilog的設計實現

FPGA之家 ? 來源:FPGA之家 ? 2024-05-01 10:28 ? 次閱讀

Alpha算法的研究

Alpha通道是一個8位的灰度通道,該通道用256級灰度來記錄圖像中的透明度信息,定義透明、不透明和半透明區域,其中黑表示全透明,白表示不透明,灰表示半透明[15]。

半透明混合算法目前在常用到的算法是AlphaBlend。其算法如下:假設一幅圖象是A,另一幅透明的圖象是B,那么透過B去看A,看上去的圖象C就是B和A的混合圖象,設B圖象的透明度為alpha(取值為0-1,1為完全透明,0為完全不透明)。Alpha每個通道色彩混合公式如下:

7e00cc84-0116-11ef-a297-92fbcf53809c.png

R(x)、G(x)、B(x)分別指顏色x的RGB分量原色值。從上面的公式可以知道,Alpha其實是一個決定混合透明度的數值。改變這個 alpha 值可以得到一個漸變的效果。分離RGB色用"位與"、"移位"運算的方法。

透明的比例按2的N次冪來分級,這樣可以快速運算。如果是按256級Alpha = 1/256,B圖的權重 = (256-n)/256,則A圖的權重= n/256,由式 6-1可以得到紅色通道256級半透明算法:

7e113b5a-0116-11ef-a297-92fbcf53809c.png

1.2. Alpha算法實現

1.2.1. Matlab代碼

% -----------------------------------------------------------------------

% CONFIDENTIAL IN CONFIDENCE

% This confidential and proprietary software may be only used as authorized

% by a licensing agreement from CrazyBingo (Thereturnofbingo).

% In the event of publication, the following notice is applicable:

% Copyright (C) 2011-201x CrazyBingo Corporation

% The entire notice above must be reproduced on all authorized copies.

% Author                :       CrazyBingo

% Technology blogs      :       http://blog.chinaaet.com/crazybingo %                               http://www.cnblogs.com/crazybingo % Eamil Address         :       thereturnofbingo@gmail.com

% Filename              :       RGB_Alpha.m

% Data                  :       2013-04-22

% Version               :       1.0

% Description           :       Alpha Algorithm of 2 RGB Image.

% Modification History  :

% Data          By          Version         Change Description

%=======================================================================

% 13/04/22      CrazyBingo  1.0             Original

% -----------------------------------------------------------------------

clear all;  %清除Matlab緩存數據

% -----------------------------------------------------------------------

% Read PC iamge to Matlab

IMG1 = imread('E:Matlab_InformationMatlab_ProjectBMPFish2.bmp');    % 讀取RGB文件,X光的魚圖

IMG2 = imread('E:Matlab_InformationMatlab_ProjectBMPWater.bmp');    % 讀取RGB文件,綠葉湖泊

h = size(IMG1,1);         % 讀取圖像高度

w = size(IMG1,2);         % 讀取圖像寬度

figure(1);

subplot(1,2,1);

imshow(uint8(IMG1));

subplot(1,2,2);

imshow(uint8(IMG2));

% -----------------------------------------------------------------------

% IMG1 add tO IMG2 with alpha algorthm

ALPHA_PARAM = 0.6;

IMG1 = double(IMG1);

IMG2 = double(IMG2);

IMG3 = zeros(h,2,3); for i = 1 : h for j = 1 : w

        IMG3(i,j,1) = IMG1(i,j,1)*ALPHA_PARAM + IMG2(i,j,1)*(1-ALPHA_PARAM);

        IMG3(i,j,2) = IMG1(i,j,2)*ALPHA_PARAM + IMG2(i,j,2)*(1-ALPHA_PARAM);

        IMG3(i,j,3) = IMG1(i,j,3)*ALPHA_PARAM + IMG2(i,j,3)*(1-ALPHA_PARAM);

    end

end

% -------------------------------------------------------------------------

figure(2);

imshow(uint8(IMG3));

title('Alpha Image with IMG1 & IMG2');

imwrite(IMG3,'E:Matlab_InformationMatlab_ProjectRGB_Alpha_ProcessRGB_Alpha.bmp');  %保存重建后的BMP

1.2.2. 效果圖

7e1d7ac8-0116-11ef-a297-92fbcf53809c.jpg

1.2.3.半透明算法的FPGA實現

Verilog中,通過組合邏輯,運用內嵌乘法器,以及移位運算,可以快速實現對兩幅圖像的透明度的實時控制。設計中設定了256級半透明級數,通過按鍵來控制alpha_data的參數,從而實現調節兩幅圖像之間的透明度。Verilog算法如下所示:

1 wire [15:0] red_data = ((8'd255-alpha_data)* lcd_data_reg[15:11]+  alpha_data * lcd_data_in[15:11])>> 8; //紅色通道
2  
3 wire [15:0] gre_data =  ((8'd255-alpha_data)*lcd_data_reg[10:5]+  alpha_data * lcd_data_in[10:5])>> 8; //綠色通道
4  
5 wire [15:0] blu_data =  ((8'd255-alpha_data)*lcd_data_reg[4:0]+  alpha_data * lcd_data_in[4:0])>> 8; //藍色通道
6  
7 assign lcd_data = disp_area?{red_data[4:0],gre_data[5:0],  blu_data[4:0]} : lcd_data_reg; //RGB合并

為測試半透明算法,將分形圖與彩條疊加,通過外部按鍵的調節,驗證了此半透明算法的正確性。VGA半透明圖形疊加如下圖所示,此時即可見分形圖,又可見8條彩條,兩者相互融合。

7e51a550-0116-11ef-a297-92fbcf53809c.jpg

圖 6-1 半透明算法驗證圖

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

    關注

    185

    文章

    2980

    瀏覽量

    230784
  • RGB
    RGB
    +關注

    關注

    4

    文章

    801

    瀏覽量

    58623
  • 乘法器
    +關注

    關注

    8

    文章

    206

    瀏覽量

    37145
  • Alpha
    +關注

    關注

    0

    文章

    45

    瀏覽量

    25687
  • 按鍵控制
    +關注

    關注

    1

    文章

    44

    瀏覽量

    8820

原文標題:Alpha半透明圖形疊加算法Matlab+Verilog實現

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

收藏 人收藏

    評論

    相關推薦

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

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

    求51單片機顯示透明圖

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

    《Visual C# 2008程序設計經典案例設計與實現》---半透明的T形窗體

    《Visual C# 2008程序設計經典案例設計與實現》---半透明的T形窗體[hide][/hide]
    發表于 05-02 13:32

    DM36x的OSD透明顯示問題,請問有沒有人實現過圖片的透明疊加顯示呢??

    本帖最后由 一只耳朵怪 于 2018-5-28 17:13 編輯 大家好!? ? ? ? 在DM368上,可使用SW OSD Lib實現字符的透明疊加,不知道可不可實現圖片的
    發表于 05-28 13:09

    如何實現軟件alpha混合?

    件在這些圖中部分重疊。其中一個具有α150,另一個具有255。在FL2.PNG中,實際的LCD屏幕上沒有實現alpha混合。如何實現軟件(非硬件)alpha混合?YTS 以上來自于百
    發表于 11-22 15:20

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

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

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

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

    最強加密算法?AES加密算法MatlabVerilog實現 精選資料推薦

    目錄背景AES加密的幾種模式基本運算AES加密原理Matlab實現Verilog實現Testbench此文重點講述了AES加密算法的加密模式
    發表于 07-28 07:34

    基于FPGA的Alpha半透明圖疊加算法硬件實現

    發表于 08-24 21:19 ?10次下載

    JAVA教程之半透明圖

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

    matlab實現圖像疊加

    matlab基礎語言實現圖像疊加,可調透明度,可調圖像大小,可調疊加位置,用以參考
    發表于 04-19 09:39 ?9次下載

    BP算法及其matlab實現

    高級自動控制算法:BP算法及其matlab實現
    發表于 12-02 11:45 ?2次下載

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

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

    使用MatlabVerilog實現fibonacci序列包括源代碼和testbench

    使用MatlabVerilog實現fibonacci序列包括源代碼和testbench(電源技術論壇app)-使用MatlabVerilog
    發表于 09-16 14:41 ?13次下載
    使用<b class='flag-5'>Matlab</b>和<b class='flag-5'>Verilog</b><b class='flag-5'>實現</b>fibonacci序列包括源代碼和testbench

    Alpha半透明圖疊加設計

    Alpha 通道**是一個 **8 **位的灰度通道,該通道采用** 2^8 = 256 **級灰度來記錄圖像中的透明度信息
    的頭像 發表于 10-09 10:42 ?750次閱讀
    <b class='flag-5'>Alpha</b><b class='flag-5'>半透明圖</b>像<b class='flag-5'>疊加</b>設計
    主站蜘蛛池模板: 国产最新地址| 国产又爽又黄又不遮挡视频| 热の中文 AV天堂| 99RE久久精品国产| 亚洲 小说 欧美 激情 另类| 免费看成人毛片| lesbabes性欧美| 亚洲一区综合图区| 善良的女房东味道2在线观看| 久久水蜜桃亚洲AV无码精品偷窥| 91精品福利一区二区| 亚洲国产精品一区二区久久第| 花蝴蝶免费观看影视| 高h辣h双处全是肉一对一| 97久久无码精品AV| 夜色福利院在线观看免费| 婷婷亚洲五月色综合久久| 欧美一区二区三区久久综| 久久久97丨国产人妻熟女| 国产亚洲精品99一区二区 | chinese黑人第一次| 在线欧美 精品 第1页| 全免费午夜一级毛片| 久青草国产在线视频| 黑人巨茎大战白人女40CMO| 国产精品久久久久婷婷五月色| 草莓视频在线播放视频| 亚洲精品久久久久久偷窥| 手机伊在人线香蕉2| 秋霞久久久久久一区二区| 男人把女人桶到高潮嗷嗷叫| 久久久久久久伊人电影| 精品亚洲视频在线观看| 果冻传媒AV精品一区| 国产人成高清在线视频99| 富婆夜店找黑人猛男BD在线| YIN荡的老师系列第6部分视频| 亚洲视频精品在线观看| 午夜伦理电影在线观免费| 双性精跪趴灌满h室友4p| 色窝窝亚洲AV在线观看|