亚洲无码电影院高清在线播放,黄色入口亚欧三级,草榴视空姐,亚洲VR一区二区在线播放,无码中文字幕av免费放,国产一区二区精品偷斗情

歡迎您進入深圳長欣自動化設備有限公司

長欣工控

plc控制器 ? plc控制系統(tǒng) ? plc控制柜

工控設備供應商

咨詢熱線177-5963-5229

使用DNN深度神經(jīng)網(wǎng)絡實現(xiàn)圖像AIGC的開發(fā)-基于米爾瑞薩RZ/G2L開發(fā)板的創(chuàng)新應用

文章作者:長欣小編 人氣:發(fā)表時間:2023-10-24 09:33

01.

項目背景介紹

AIGC(即ArtificialIntelligence Generated Content),中文譯為人工智能生成內容。簡單來說,就是經(jīng)過大量特征訓練過的神經(jīng)網(wǎng)絡模型來對新的內容或者需求來生成人們需要的創(chuàng)作內容,類似使用人類用思考和創(chuàng)造力才能完成的工作過程,而現(xiàn)在可以利用人工智能技術來替代我們完成。在狹義上AIGC是指利用AI自動生成內容的生產(chǎn)方式,比如自動寫作、自動設計等。在廣義上,AIGC是指像人類一樣具備生成創(chuàng)造能力的AI技術,它可以基于訓練數(shù)據(jù)和生成算法來完成各類的內容生成創(chuàng)作。

在圖像生成模型生成方面最主要的幾個代表模型,是以下常見的4個模型:

DNN

GAN

VAE

Diffusion

其中基于深度神經(jīng)網(wǎng)絡(DNN)的進行圖像藝術風格轉移(Transform),生成高質量的具有藝術風格圖像的神經(jīng)網(wǎng)絡模型。該模型通過深度神經(jīng)網(wǎng)絡分別提取圖像中的內容和風格特征,然后對其目標圖片內容進行重組,生成具有原圖內容和藝術風格的圖像,其風格轉移不僅對圖像的圖案,顏色,特征等進行修改還保留原圖高可辨識的內容載體。

通常AIGC對硬件性能要求較高,只要具備高性能的圖形圖像的PC圖形工作站或者服務器上來運行。而這里我們將使用MYD-YG2L開發(fā)板上來實現(xiàn)在嵌入式設備上完成圖像風格轉移計算這一任務。并且結合圖形界面和USB攝像頭完成對任意拍攝的圖片進行圖像風格化的開發(fā)。讓嵌入式上也能夠體驗這種獨特的AIGC內容生成方式。

02.

技術硬件方案

項目采用MYD-YG2L為主控板,使用800萬像素4K級廣角USB相機鏡頭,通過采集畫面,在主控板內完成對畫面的風格化處理,并通過HDMI輸出顯示生成的圖像。

微信圖片_20231023134031.png

這里使用開發(fā)板連接HDMI顯示器和接入一個4K高清鏡頭,主要硬件連接如下圖:

微信圖片_20231023134035.png

03.

主要技術原理

圖像風格轉移的主要過程是對輸入img_content和img_style,然后要把img_content的內容主體和img_style進行一個結合,實現(xiàn)一個圖像的創(chuàng)意創(chuàng)作,這個過程也叫做Style Transform 即風格轉移。如下圖中,第一列是輸入的原圖像, 第二列是風格圖,第三列之后就是各種控制參數(shù)下的輸出風格圖像:

微信圖片_20231023134038.png

其核心的算法是把基于CNN卷積編碼后的特征向量transformer第一個結合到風格遷移任務中,再對混合后的內容進行解碼,從而輸出新的圖像內容,主要參考李飛飛論文,其核心流程如下圖:

微信圖片_20231023134041.png

微信圖片_20231023134044.png

微信圖片_20231023134046.png

經(jīng)過測試MYD-YG2L較好的支持OpenCV這個工具庫,并且具備較強的圖像處理能力。那么就可以在板上使用OpenCV的DNN模塊來實現(xiàn)以上算法過程。OpenCV的DNN模塊從發(fā)行版開始,主要是支持推理,而數(shù)據(jù)訓練不是其支持的目標。因此我們可以使用已經(jīng)訓練好的模型,在板上上完成推理過程,即圖像風格轉移生成的這一過程?,F(xiàn)在OpenCV已經(jīng)支持TensorFlow、Pytorch/Torch、Caffe、DarkNet等模型的讀取,OpenCV的 DNN模塊的用法。

OpenCV的DNN模塊進行模型推理就顯得比較簡單,過程就是:

1.加載模型

因為OpenCV DNN模塊主要用來做推理計算,所以在使用前首先準備一個訓練好的模型(如何訓練自己的不同風格的模型后面也會闡述)。OpenCV支持所有主流框架的大部分模型。OpenCV的readNet系列函數(shù)就可以看出所支持的框架類型:

readNetFromCaffe

readNetFromTensorflow

readNetFromTorch

readNetFromDarknet

readNetFromONNX

readNetFromModelOptimizer

這里所用風格遷移模型是開源的Torch/Lua的模型fast-neural-style。他們提供了十種風格遷移的模型,模型的下載腳本在:https://github.com/jcjohnson/fas ... _transfer_models.sh。這里使用OpenCV的readNetFromTorch函數(shù)加載PyTorch模型。

2.輸入圖像預處理

在OpenCV中輸入給模型的圖像需要首先被構建成一個4個區(qū)塊的數(shù)據(jù)塊(Blob),并且做如resize、歸一化和縮放之類的一些預處理。

3.模型推理

模型推理過程就是把輸入構建的blob輸入給模型神經(jīng)網(wǎng)絡模型進行一次前向傳播,在OpenCV中,用以下非常簡單的兩行代碼即可完成:

net.setInput(blob)

output = net.forward()

04.

軟件系統(tǒng)設計

在本軟件開發(fā),主要使用MYD-YG2L的SDK中,使用了OpenCV SDK與QT SDK。QT 主要實現(xiàn)文件圖像風格轉移的界面操作,使用OpenCV實現(xiàn)DNN圖像推理計算。

設計QTUI,選擇文件或者攝像頭采集原圖像

微信圖片_20231023134049.png

開發(fā)UI交互邏輯代碼

微信圖片_20231023134052.png

開發(fā)OpenCV DNN神經(jīng)網(wǎng)絡調用模塊

微信圖片_20231023134054.png

在開發(fā)板的交叉編譯環(huán)境編譯,把編譯的結果部署到開發(fā)板上。另外把風格轉移用到的訓練模型文件也部署到開發(fā)板上,經(jīng)過實際測試,以下模型在開發(fā)板上運行正常,而其它模型則因內存不夠而報錯。

1: "udnie",

2: "la_muse",

3: "the_scream",

4: "candy",

5: "mosaic",

6: "feathers",

7: "starry_night"

05.

軟件運行效果

把QT軟件與相關模型文件部署到開發(fā)板上后,即可以運行測試效果,開發(fā)板上啟動運行QT程序命令:

./style_transform -platform linuxfb

運行后,選擇一張圖片顯示如下:

微信圖片_20231023134057.png

點擊 “transform”按鈕,等待約13秒,得到風格轉移輸出畫面,如下:

微信圖片_20231023134100.png

再換一張米爾的LOGO圖,這個圖片尺寸較小,圖像內容變化率低看一下,風格化轉換時間:

微信圖片_20231023134103.png

測試仍然為13秒左右,得到如下輸出圖像:

微信圖片_20231023134105.png

這上面使用的是feathers模型生成的風格圖片,其它模型時間也差不多在這個時間。

06.

開發(fā)后記

最后使用開發(fā)的圖像轉換程序,在MAC電腦上編譯了MAC版本與開發(fā)板上對同一圖片轉換進行比較。其使用MacBook Pro 2.2G 16G內存主頻硬件運行該圖片轉換時,需要8.6秒。多次測試,對不同模型的轉換分別測試,基本上在MYD-YG2LX上運行速度能達到MAC電腦轉換的66%性能,這個結果看該開發(fā)板其DNN推理計算性能比較強悍。

該項目在后續(xù)的發(fā)展中,在有更多時間時,將嘗試訓練更多特色的風格,以及融入GAN生成神經(jīng)網(wǎng)絡模型的內容生成模型,嘗試多種方法來進行更豐富多彩的內容生成。

在做本項目開發(fā)時,從資料中已知知名的內容生成項目stable diffusion已經(jīng)在一些嵌入式開發(fā)板上移植運行成功,這個振奮的消息會不會又給自己挖了一個坑呢。

07.

參考文獻與資料

[1]. MYD-YG2LX開發(fā)板文檔:

http://down.myir-tech.com/MYD-YG2LX

[2] PerceptualLosses for Real-Time Style Transfer and Super-Resolution。李飛飛

[3].MYD-YG2LX_Linux軟件開發(fā)指南

http://down.myir-tech.com/MYD-YG2LX/User_Manual.zip

[4].SDK 及原理圖倉庫:

http://down.myir-tech.com/MYD-YG2LX/01_Documents.zip

[5] 黃俊明; 陳平平; 王彩申; Linux環(huán)境下基于OpenCV圖像處理,電腦編程技巧與維護,2023.1

[6] Perceptual lossfor Real time Style Transfer and Super-Resolution 論文閱讀分析

https://zhuanlan.zhihu.com/p/27165113

[7] Torch風格轉移訓練完成模型:

https://github.com/jcjohnson/fast-neural-style

返回頂部