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

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

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

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

米爾電子 ? 2023-10-21 08:01 ? 次閱讀

本文由米爾論壇優(yōu)秀評測者“ALSET”提供。

01.

項目背景介紹


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

DNNGANVAEDiffusion

其中基于深度神經(jīng)網(wǎng)絡(luò)(DNN)的進(jìn)行圖像藝術(shù)風(fēng)格轉(zhuǎn)移(Transform),生成高質(zhì)量的具有藝術(shù)風(fēng)格圖像的神經(jīng)網(wǎng)絡(luò)模型。該模型通過深度神經(jīng)網(wǎng)絡(luò)分別提取圖像中的內(nèi)容和風(fēng)格特征,然后對其目標(biāo)圖片內(nèi)容進(jìn)行重組,生成具有原圖內(nèi)容和藝術(shù)風(fēng)格的圖像,其風(fēng)格轉(zhuǎn)移不僅對圖像的圖案,顏色,特征等進(jìn)行修改還保留原圖高可辨識的內(nèi)容載體。通常AIGC對硬件性能要求較高,只要具備高性能的圖形圖像的PC圖形工作站或者服務(wù)器上來運(yùn)行。而這里我們將使用MYD-YG2L開發(fā)板上來實(shí)現(xiàn)在嵌入式設(shè)備上完成圖像風(fēng)格轉(zhuǎn)移計算這一任務(wù)。并且結(jié)合圖形界面和USB攝像頭完成對任意拍攝的圖片進(jìn)行圖像風(fēng)格化的開發(fā)。讓嵌入式上也能夠體驗這種獨(dú)特的AIGC內(nèi)容生成方式。


02.

技術(shù)硬件方案


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

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

01e24ac2-6fa5-11ee-9788-92fbcf53809c.png

03.

主要技術(shù)原理


圖像風(fēng)格轉(zhuǎn)移的主要過程是對輸入img_content和img_style,然后要把img_content的內(nèi)容主體和img_style進(jìn)行一個結(jié)合,實(shí)現(xiàn)一個圖像的創(chuàng)意創(chuàng)作,這個過程也叫做Style Transform 即風(fēng)格轉(zhuǎn)移。

其核心的算法是把基于CNN卷積編碼后的特征向量transformer第一個結(jié)合到風(fēng)格遷移任務(wù)中,再對混合后的內(nèi)容進(jìn)行解碼,從而輸出新的圖像內(nèi)容,主要參考李飛飛論文,其核心流程如下圖:02144842-6fa5-11ee-9788-92fbcf53809c.png022a2d7e-6fa5-11ee-9788-92fbcf53809c.png023f21e8-6fa5-11ee-9788-92fbcf53809c.png 經(jīng)過測試MYD-YG2L較好的支持OpenCV這個工具庫,并且具備較強(qiáng)的圖像處理能力。那么就可以在板上使用OpenCV的DNN模塊來實(shí)現(xiàn)以上算法過程。OpenCV的DNN模塊從發(fā)行版開始,主要是支持推理,而數(shù)據(jù)訓(xùn)練不是其支持的目標(biāo)。因此我們可以使用已經(jīng)訓(xùn)練好的模型,在板上上完成推理過程,即圖像風(fēng)格轉(zhuǎn)移生成的這一過程?,F(xiàn)在OpenCV已經(jīng)支持TensorFlow、Pytorch/Torch、Caffe、DarkNet等模型的讀取,OpenCV的 DNN模塊的用法。OpenCV的DNN模塊進(jìn)行模型推理就顯得比較簡單,過程就是:1.加載模型因為OpenCV DNN模塊主要用來做推理計算,所以在使用前首先準(zhǔn)備一個訓(xùn)練好的模型(如何訓(xùn)練自己的不同風(fēng)格的模型后面也會闡述)。OpenCV支持所有主流框架的大部分模型。OpenCV的readNet系列函數(shù)就可以看出所支持的框架類型:

readNetFromCaffereadNetFromTensorflowreadNetFromTorchreadNetFromDarknetreadNetFromONNXreadNetFromModelOptimizer

這里所用風(fēng)格遷移模型是開源的Torch/Lua的模型fast-neural-style。他們提供了十種風(fēng)格遷移的模型,模型的下載腳本在:https://github.com/jcjohnson/fas ... _transfer_models.sh。這里使用OpenCV的readNetFromTorch函數(shù)加載PyTorch模型。2.輸入圖像預(yù)處理在OpenCV中輸入給模型的圖像需要首先被構(gòu)建成一個4個區(qū)塊的數(shù)據(jù)塊(Blob),并且做如resize、歸一化和縮放之類的一些預(yù)處理。3.模型推理模型推理過程就是把輸入構(gòu)建的blob輸入給模型神經(jīng)網(wǎng)絡(luò)模型進(jìn)行一次前向傳播,在OpenCV中,用以下非常簡單的兩行代碼即可完成:net.setInput(blob)output = net.forward()

04.

軟件系統(tǒng)設(shè)計


在本軟件開發(fā),主要使用MYD-YG2L的SDK中,使用了OpenCV SDK與QT SDK。QT 主要實(shí)現(xiàn)文件圖像風(fēng)格轉(zhuǎn)移的界面操作,使用OpenCV實(shí)現(xiàn)DNN圖像推理計算。設(shè)計QTUI,選擇文件或者攝像頭采集原圖像

024432f0-6fa5-11ee-9788-92fbcf53809c.png?

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

025e854c-6fa5-11ee-9788-92fbcf53809c.png?

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

026b3ab2-6fa5-11ee-9788-92fbcf53809c.png?

在開發(fā)板的交叉編譯環(huán)境編譯,把編譯的結(jié)果部署到開發(fā)板上。另外把風(fēng)格轉(zhuǎn)移用到的訓(xùn)練模型文件也部署到開發(fā)板上,經(jīng)過實(shí)際測試,以下模型在開發(fā)板上運(yùn)行正常,而其它模型則因內(nèi)存不夠而報錯。1: "udnie", 2: "la_muse", 3: "the_scream", 4: "candy", 5: "mosaic", 6: "feathers", 7: "starry_night"

05.

軟件運(yùn)行效果


把QT軟件與相關(guān)模型文件部署到開發(fā)板上后,即可以運(yùn)行測試效果,開發(fā)板上啟動運(yùn)行QT程序命令:./style_transform -platform linuxfb運(yùn)行后,選擇一張圖片顯示

點(diǎn)擊 “transform”按鈕,等待約13秒,得到風(fēng)格轉(zhuǎn)移輸出畫面

再換一張米爾的LOGO圖,這個圖片尺寸較小,圖像內(nèi)容變化率低看一下,風(fēng)格化轉(zhuǎn)換時間:

02a73f8a-6fa5-11ee-9788-92fbcf53809c.png?

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

02b7a230-6fa5-11ee-9788-92fbcf53809c.png?

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

06.

開發(fā)后記


最后使用開發(fā)的圖像轉(zhuǎn)換程序,在MAC電腦上編譯了MAC版本與開發(fā)板上對同一圖片轉(zhuǎn)換進(jìn)行比較。其使用MacBook Pro 2.2G 16G內(nèi)存主頻硬件運(yùn)行該圖片轉(zhuǎn)換時,需要8.6秒。多次測試,對不同模型的轉(zhuǎn)換分別測試,基本上在MYD-YG2LX上運(yùn)行速度能達(dá)到MAC電腦轉(zhuǎn)換的66%性能,這個結(jié)果看該開發(fā)板其DNN推理計算性能比較強(qiáng)悍。 該項目在后續(xù)的發(fā)展中,在有更多時間時,將嘗試訓(xùn)練更多特色的風(fēng)格,以及融入GAN生成神經(jīng)網(wǎng)絡(luò)模型的內(nèi)容生成模型,嘗試多種方法來進(jìn)行更豐富多彩的內(nèi)容生成。在做本項目開發(fā)時,從資料中已知知名的內(nèi)容生成項目stable diffusion已經(jīng)在一些嵌入式開發(fā)板上移植運(yùn)行成功,這個振奮的消息會不會又給自己挖了一個坑呢。

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

    關(guān)注

    25

    文章

    4895

    瀏覽量

    97056
  • dnn
    dnn
    +關(guān)注

    關(guān)注

    0

    文章

    59

    瀏覽量

    9033
  • 米爾電子
    +關(guān)注

    關(guān)注

    0

    文章

    102

    瀏覽量

    433
  • AIGC
    +關(guān)注

    關(guān)注

    1

    文章

    352

    瀏覽量

    1484
收藏 人收藏

    評論

    相關(guān)推薦

    領(lǐng)萬元大獎!米爾電子Remi Pi 米派創(chuàng)意秀

    創(chuàng)意秀、米派、Remi Pi、米爾電子、樹莓派 2024年,米爾電子和電子共同定義和開發(fā)
    發(fā)表于 09-02 14:58

    RZ/G2L串口SCI的使用(上)

    RZ/G2L串口SCI的使用
    的頭像 發(fā)表于 07-25 08:06 ?447次閱讀
    <b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b>串口SCI的使用(上)

    2024技術(shù)交流日進(jìn)行中,米爾誠邀您參觀

    基于RZ/G2LRZ/G2UL系列核心開發(fā)板,吸引了廣大客戶前來參觀了解。2024年
    的頭像 發(fā)表于 05-30 08:01 ?420次閱讀
    2024<b class='flag-5'>瑞</b><b class='flag-5'>薩</b>技術(shù)交流日進(jìn)行中,<b class='flag-5'>米爾</b>誠邀您參觀

    培訓(xùn)進(jìn)行中!米爾基于RZ/G2L的OpenAMP混合部署實(shí)戰(zhàn)培訓(xùn)

    5月22-23日,由米爾電子和電子聯(lián)合舉辦的“電子基于RZ/
    的頭像 發(fā)表于 05-30 08:01 ?369次閱讀
    培訓(xùn)進(jìn)行中!<b class='flag-5'>米爾</b>與<b class='flag-5'>瑞</b><b class='flag-5'>薩</b>基于<b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b>的OpenAMP混合部署實(shí)戰(zhàn)培訓(xùn)

    米爾-米派兼容樹莓派擴(kuò)展模塊-試用體驗】值得擁有的米爾-米派兼容樹莓派生態(tài)

    今天為大家介紹一塊米爾出的精致生態(tài)開發(fā)板-米爾-米派兼容樹莓派擴(kuò)展模塊。 超高性價比的RZ/G2L
    發(fā)表于 05-13 11:28

    米爾-米派兼容樹莓派擴(kuò)展模塊-試用體驗】用視頻來了解這塊生態(tài)_米爾-米派兼容樹莓派擴(kuò)展模塊

    今天為大家展示一下初始開發(fā)板_米爾-米派兼容樹莓派擴(kuò)展模塊, 米爾-米派兼容樹莓派擴(kuò)展模塊介紹如下:
    發(fā)表于 04-29 11:51

    米爾-米派兼容樹莓派擴(kuò)展模塊-試用體驗】初始開發(fā)板_米爾-米派兼容樹莓派擴(kuò)展模塊

    開發(fā)板,他兼顧了嚴(yán)肅產(chǎn)品開發(fā)和愛好者創(chuàng)意實(shí)現(xiàn)兩種需要。告訴你,選擇它的五大理由: 1.工業(yè)芯片:采用
    發(fā)表于 04-29 11:42

    米爾-RZ/G2UL開發(fā)板】3.雜項測試

    米爾-RZ/G2UL開發(fā)板】3.雜項測試 不知道為啥我這板子好多奇奇怪怪的調(diào)試信息蹦出來,
    發(fā)表于 02-28 15:25

    米爾-RZ/G2UL開發(fā)板】1.開箱

    米爾-RZ/G2UL開發(fā)板】1.開箱 開箱視頻 開箱也許會遲到,但是絕對不會缺席。今天開箱
    發(fā)表于 02-04 23:38

    米爾RZ/G2L開發(fā)板米派雙核A55Remi Pi學(xué)習(xí)兼容樹莓派擴(kuò)展模塊

    RemiPi第一款MPU生態(tài)板卡兼容樹莓派擴(kuò)展模塊RZ/G2L工業(yè)級處理器,便于企業(yè)客戶
    發(fā)表于 01-29 17:05 ?4次下載

    專注工業(yè)產(chǎn)品開發(fā)米派強(qiáng)勢來襲

    創(chuàng)意實(shí)現(xiàn)兩種需要。告訴你,選擇它的五大理由:1.工業(yè)芯片:采用RZ/G2L雙核A55芯片,芯片是工業(yè)級,結(jié)溫可達(dá)-40到+125度,滿足
    的頭像 發(fā)表于 01-26 08:01 ?482次閱讀
    專注工業(yè)產(chǎn)品<b class='flag-5'>開發(fā)</b>的<b class='flag-5'>瑞</b>米派強(qiáng)勢來襲

    米爾電子和電子推出首款MPU生態(tài)開發(fā)板米派

    近日,米爾電子和電子共同定義和開發(fā)第一款MPU生態(tài)
    的頭像 發(fā)表于 01-25 09:21 ?999次閱讀

    RZ/G2L串口SCI的使用(上)

    RZ/G2L的串口簡稱SCI,全稱Serial Communication Interface。
    的頭像 發(fā)表于 01-17 12:19 ?1371次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b>串口SCI的使用(上)

    米爾-RZ/G2UL開發(fā)板開發(fā)板開箱與接口介紹

    開發(fā)板簡介 MYC-YG2UL核心開發(fā)板基于RZ/G2UL處理器,通用64位工業(yè)MPU
    發(fā)表于 01-14 13:25

    RZ系列開發(fā)板6折,米爾將助力研討會

    展出RZ/G2L、RZ/G2UL系列核心開發(fā),并進(jìn)行demo演示,將圍繞“嵌入式CPU模組助力
    的頭像 發(fā)表于 12-07 08:14 ?408次閱讀
    <b class='flag-5'>RZ</b>系列<b class='flag-5'>開發(fā)板</b>6折,<b class='flag-5'>米爾</b>將助力<b class='flag-5'>瑞</b><b class='flag-5'>薩</b>研討會