一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

【ROC-RK3568-PC開(kāi)發(fā)板試用體驗(yàn)】RGA——硬件圖像加速模塊使用方法

開(kāi)發(fā)板試用精選 ? 來(lái)源:開(kāi)發(fā)板試用 ? 作者:電子發(fā)燒友論壇 ? 2022-10-18 15:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文來(lái)源電子發(fā)燒友社區(qū),作者:羈傲不馴, 帖子地址:https://bbs.elecfans.com/jishu_2307583_1_1.html


RGA (Raster Graphic Acceleration Unit)是一個(gè)獨(dú)立的2D硬件加速器,可用于加速點(diǎn)/線繪制,執(zhí)行圖像縮放、旋轉(zhuǎn)、bitBlt、alpha混合等常見(jiàn)的2D圖形操作。
K3568,其規(guī)格如下:

硬件版本 代碼名稱(chēng) 輸入最小 輸入最大 輸出最小 輸出最大 像素/周期 性能(頻率300M)
RGA2-Enhance skylarkV2 2x2 8192x8192 2x2 4096x4096 2 ≈600Mpix/s
硬件版本 代碼名稱(chēng) 輸入圖像數(shù)據(jù)格式 輸出圖像數(shù)據(jù)格式
RGA2-Enhance skylarkV2 RGBA/BGRA/ARGB/ABGR8888RGBA/BGRA/ARGB/ABGR4444RGBA/BGRA/ARGB/ABGR5551RGB/BGR888RGB/BGR565YUV420 8位YUV420 10位YUV422 8位YUV422 10位YUYV/YVYU/UYVY/VYUY422BPP8/BPP4/BPP2/BPP1(僅適用于調(diào)色板) RGBA/BGRA/ARGB/ABGR8888RGBA/BGRA/ARGB/ABGR4444RGBA/BGRA/ARGB/ABGR5551RGB/BGR888RGB/BGR565YUV420 8位YUV422 8位YUYV/YVYU/UYVY/VYUY422YUYV/YVYU/UYVY/VYUY420YUV400Y4/Y1

image.png

本文程序見(jiàn)下鏈接:
github.com

RGA模塊支持庫(kù)為librga.so,通過(guò)對(duì)圖像緩沖區(qū)結(jié)構(gòu)體struct rga_info進(jìn)行配置,實(shí)現(xiàn)相應(yīng)的2D圖形操作。為了獲得更友好的開(kāi)發(fā)體驗(yàn),在此基礎(chǔ)上進(jìn)一步封裝常用的2D圖像操作接口。新的接口主要包含以下特點(diǎn):

  • 接口定義參考o(jì)pencv/matlab中常用的2D圖形接口定義,以減少二次開(kāi)發(fā)的學(xué)習(xí)成本。
  • 為消除RGA硬件版本差異帶來(lái)的兼容問(wèn)題,加入RGA query查詢(xún)功能。查詢(xún)內(nèi)容主要包括版本信息,輸入輸出大分辨率及圖像格式的支持。
  • 對(duì)于2D圖像復(fù)合操作,增加improcess接口。通過(guò)傳入一系列預(yù)定義的usage執(zhí)行復(fù)合操作。
  • 執(zhí)行圖像操作之前,需要對(duì)輸入輸出圖像緩沖區(qū)進(jìn)行處理。調(diào)用wrapbuffer_T接口將輸入輸出圖像信息填充到結(jié)構(gòu)體struct rga_buffer_t,結(jié)構(gòu)體中包含分辨率及圖像格式等信息。

1、圖片輸入

  1. 使用libpng or libjpeg等開(kāi)源庫(kù)實(shí)現(xiàn)對(duì)用戶輸入圖像的解碼。
  2. 參考imv 源碼,進(jìn)行圖片類(lèi)型識(shí)別。
  3. 使用開(kāi)源軟件Opencv自適應(yīng)打開(kāi)圖片文件。
  4. 使用stb-image庫(kù),打開(kāi)文件獲取圖像。(*)

參考了很多大佬的開(kāi)源軟件,最后選擇了使用簡(jiǎn)單易用的stb庫(kù)實(shí)現(xiàn)對(duì)圖像文件的解析。

圖片輸入

解析圖片:

p_src->img_data = stbi_load(file_patch, &iw, &ih, &n, 0);

解析后的圖像數(shù)據(jù)為img_data,圖像的寬:iw;高:ih;顏色通道:n 其中n為:

enum {    
STBI_default = 0, // only used for desired_channels     
STBI_grey       = 1,   //灰度圖    
STBI_grey_alpha = 2,    //灰度+透明度    
STBI_rgb        = 3,    //RGB圖    
STBI_rgb_alpha  = 4    // RGB+透明度 
};

圖像縮放

圖像縮放功能使用rga接口,輸入輸出參數(shù)均為最簡(jiǎn)圖像結(jié)構(gòu)體。

struct image_param{     
int width; //寬     
int heigth; //高     
RgaSURF_FORMAT fmt; // 圖像格式     
unsigned char *img_data; //圖像數(shù)據(jù) 
}; 
int rga_resize_test(struct image_param *p_src, struct image_param *p_dst)

使用完成后需要使用release_image_file_buf接口釋放圖像內(nèi)存!??!

圖像剪裁

int rga_crop_test(struct image_param *p_src, struct image_param *p_dst, im_rect src_rect);

測(cè)試了如下圖片格式

輸入圖片 輸出圖片 顏色格式 解析顏色格式 是否正常輸出 轉(zhuǎn)化時(shí)間ms
8192*8192 4096*4096 RGBA32 RGB888 217.829
8192*8192 8192*2048 YUV420 RGB888 不支持長(zhǎng)寬超過(guò)分辨率的縮放
1920*1080 1280*720 YUV420 RGB888 8.890
3840*2160 1280*720 RGB32 RGBA8888 27.267



聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • RK3568
    +關(guān)注

    關(guān)注

    5

    文章

    584

    瀏覽量

    6396
  • 開(kāi)發(fā)板試用

    關(guān)注

    3

    文章

    302

    瀏覽量

    2403
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【HZ-RK3568開(kāi)發(fā)板免費(fèi)體驗(yàn)】HZ-RK3568開(kāi)發(fā)板初步接觸

    J處理器設(shè)計(jì),支持圖像H.264編解碼處理,內(nèi)置3D GPU可圖像處理,2D硬件加速引擎,內(nèi)置0.8TOPS NPU算力,具備一定AI能力。 RK3568介紹如下: HZ-
    發(fā)表于 07-10 23:19

    技術(shù)分享 | 迅為RK3568開(kāi)發(fā)板如何將 Linux 板卡虛擬成U盤(pán)

    技術(shù)分享 | 迅為RK3568開(kāi)發(fā)板如何將 Linux 板卡虛擬成U盤(pán)
    的頭像 發(fā)表于 06-04 10:57 ?458次閱讀
    技術(shù)分享 | 迅為<b class='flag-5'>RK3568</b><b class='flag-5'>開(kāi)發(fā)板</b>如何將 Linux 板卡虛擬成U盤(pán)

    迅為RK3568開(kāi)發(fā)板驅(qū)動(dòng)指南GPIO子系統(tǒng)GPIO子系統(tǒng)API函數(shù)的引入

    迅為RK3568開(kāi)發(fā)板驅(qū)動(dòng)指南GPIO子系統(tǒng)GPIO子系統(tǒng)API函數(shù)的引入
    的頭像 發(fā)表于 05-29 14:05 ?447次閱讀
    迅為<b class='flag-5'>RK3568</b><b class='flag-5'>開(kāi)發(fā)板</b>驅(qū)動(dòng)指南GPIO子系統(tǒng)GPIO子系統(tǒng)API函數(shù)的引入

    一文掌握RK3568開(kāi)發(fā)板Android13掛載Windows共享目錄

    在物聯(lián)網(wǎng)和邊緣計(jì)算場(chǎng)景中,開(kāi)發(fā)板PC端的高效文件交互尤為重要?,F(xiàn)以iTOP-RK3568開(kāi)發(fā)板為例,詳細(xì)演示Android13系統(tǒng)如何通過(guò)CIFS協(xié)議掛載Windows共享目錄,實(shí)現(xiàn)
    的頭像 發(fā)表于 04-17 13:54 ?453次閱讀
    一文掌握<b class='flag-5'>RK3568</b><b class='flag-5'>開(kāi)發(fā)板</b>Android13掛載Windows共享目錄

    RK3568開(kāi)發(fā)板教程:以iTOP-RK3568開(kāi)發(fā)板為例 Android13通過(guò)CIFS協(xié)議掛載Windows共享目錄

    開(kāi)發(fā)板PC端的高效文件交互尤為重要?,F(xiàn)以iTOP-RK3568開(kāi)發(fā)板為例,詳細(xì)演示Android13系統(tǒng)如何通過(guò)CIFS協(xié)議掛載Windows共享目錄,實(shí)現(xiàn)
    的頭像 發(fā)表于 04-16 14:08 ?807次閱讀
    <b class='flag-5'>RK3568</b><b class='flag-5'>開(kāi)發(fā)板</b>教程:以iTOP-<b class='flag-5'>RK3568</b><b class='flag-5'>開(kāi)發(fā)板</b>為例 Android13通過(guò)CIFS協(xié)議掛載Windows共享目錄

    北京迅為RK3568開(kāi)發(fā)板OpenHarmony系統(tǒng)南向驅(qū)動(dòng)開(kāi)發(fā)內(nèi)核HDF驅(qū)動(dòng)框架架構(gòu)

    北京迅為RK3568開(kāi)發(fā)板OpenHarmony系統(tǒng)南向驅(qū)動(dòng)開(kāi)發(fā)內(nèi)核HDF驅(qū)動(dòng)框架架構(gòu)
    的頭像 發(fā)表于 03-11 14:13 ?1103次閱讀
    北京迅為<b class='flag-5'>RK3568</b><b class='flag-5'>開(kāi)發(fā)板</b>OpenHarmony系統(tǒng)南向驅(qū)動(dòng)<b class='flag-5'>開(kāi)發(fā)</b>內(nèi)核HDF驅(qū)動(dòng)框架架構(gòu)

    【技術(shù)分享】迅為RK3568開(kāi)發(fā)板使用TFTP加載內(nèi)核設(shè)備樹(shù)

    【技術(shù)分享】迅為RK3568開(kāi)發(fā)板使用TFTP加載內(nèi)核設(shè)備樹(shù)
    的頭像 發(fā)表于 02-21 14:04 ?698次閱讀
    【技術(shù)分享】迅為<b class='flag-5'>RK3568</b><b class='flag-5'>開(kāi)發(fā)板</b>使用TFTP加載內(nèi)核設(shè)備樹(shù)

    迅為RK3568開(kāi)發(fā)板驅(qū)動(dòng)指南Linux中通用SPI設(shè)備驅(qū)動(dòng)

    迅為RK3568開(kāi)發(fā)板驅(qū)動(dòng)指南Linux中通用SPI設(shè)備驅(qū)動(dòng)
    的頭像 發(fā)表于 01-23 11:02 ?2814次閱讀
    迅為<b class='flag-5'>RK3568</b><b class='flag-5'>開(kāi)發(fā)板</b>驅(qū)動(dòng)指南Linux中通用SPI設(shè)備驅(qū)動(dòng)

    RK3568內(nèi)置MCU開(kāi)發(fā)介紹之一

    A55(下文簡(jiǎn)稱(chēng)AP)和1個(gè)RISCV(下文簡(jiǎn)稱(chēng)MCU)。 硬件準(zhǔn)備 首先介紹一下硬件。主板為風(fēng)火輪科技的YY3568開(kāi)發(fā)板,主控RK3568
    的頭像 發(fā)表于 12-01 16:09 ?1838次閱讀
    <b class='flag-5'>RK3568</b>內(nèi)置MCU<b class='flag-5'>開(kāi)發(fā)</b>介紹之一

    【迅為電子】叮!您的RK3568開(kāi)發(fā)板系統(tǒng)鏡像備份方法請(qǐng)查收

    【迅為電子】叮!您的RK3568開(kāi)發(fā)板系統(tǒng)鏡像備份方法請(qǐng)查收
    的頭像 發(fā)表于 11-27 14:02 ?1092次閱讀
    【迅為電子】叮!您的<b class='flag-5'>RK3568</b><b class='flag-5'>開(kāi)發(fā)板</b>系統(tǒng)鏡像備份<b class='flag-5'>方法</b>請(qǐng)查收

    基于迅為RK3568開(kāi)發(fā)板全國(guó)產(chǎn)平臺(tái),快速實(shí)現(xiàn)APP開(kāi)機(jī)自啟動(dòng)技術(shù)分享

    基于迅為RK3568開(kāi)發(fā)板全國(guó)產(chǎn)平臺(tái),快速實(shí)現(xiàn)APP開(kāi)機(jī)自啟動(dòng)技術(shù)分享
    的頭像 發(fā)表于 11-21 13:58 ?954次閱讀
    基于迅為<b class='flag-5'>RK3568</b><b class='flag-5'>開(kāi)發(fā)板</b>全國(guó)產(chǎn)平臺(tái),快速實(shí)現(xiàn)APP開(kāi)機(jī)自啟動(dòng)技術(shù)分享

    【迅為】瑞芯微RK3588開(kāi)發(fā)板RK3568開(kāi)發(fā)板區(qū)別及優(yōu)勢(shì)

    RK3568開(kāi)發(fā)板
    的頭像 發(fā)表于 11-18 14:19 ?1474次閱讀
    【迅為】瑞芯微<b class='flag-5'>RK</b>3588<b class='flag-5'>開(kāi)發(fā)板</b><b class='flag-5'>RK3568</b><b class='flag-5'>開(kāi)發(fā)板</b>區(qū)別及優(yōu)勢(shì)

    能力再次提升! 迅為RK3588/RK3568開(kāi)發(fā)板&amp;amp;核心新增定制分區(qū)鏡像

    能力再次提升! 迅為RK3588/RK3568開(kāi)發(fā)板&核心新增定制分區(qū)鏡像
    的頭像 發(fā)表于 11-06 15:11 ?1417次閱讀
    能力再次提升! 迅為<b class='flag-5'>RK</b>3588/<b class='flag-5'>RK3568</b><b class='flag-5'>開(kāi)發(fā)板</b>&amp;amp;核心<b class='flag-5'>板</b>新增定制分區(qū)鏡像

    迅為iTOP-RK3568/RK3588開(kāi)發(fā)板獲麒麟軟件適配認(rèn)證

    迅為iTOP-RK3568/RK3588開(kāi)發(fā)板獲麒麟軟件適配認(rèn)證
    的頭像 發(fā)表于 10-18 14:56 ?1217次閱讀
    迅為iTOP-<b class='flag-5'>RK3568</b>/<b class='flag-5'>RK</b>3588<b class='flag-5'>開(kāi)發(fā)板</b>獲麒麟軟件適配認(rèn)證

    瑞芯微RK3568鴻蒙開(kāi)發(fā)板OpenHarmony系統(tǒng)修改cfg文件權(quán)限方法

    本文適用于OpenHarmony開(kāi)源鴻蒙系統(tǒng)修改cfg文件權(quán)限方法,深圳觸覺(jué)智能研發(fā)的RK3566、RK3568、RK3588等開(kāi)發(fā)板、主板
    的頭像 發(fā)表于 09-11 13:26 ?1920次閱讀
    瑞芯微<b class='flag-5'>RK3568</b>鴻蒙<b class='flag-5'>開(kāi)發(fā)板</b>OpenHarmony系統(tǒng)修改cfg文件權(quán)限<b class='flag-5'>方法</b>