色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > TFLite模型的開(kāi)盲盒體驗(yàn)之編輯模型

          TFLite模型的開(kāi)盲盒體驗(yàn)之編輯模型

          作者: 時(shí)間:2024-05-10 來(lái)源:恩智浦MCU加油站 收藏

          上期小編帶著大家一起認(rèn)識(shí)了一下TFLite格式以及它所依賴的技術(shù)(TFLite模型的開(kāi)盲盒體驗(yàn) )。今天,小編帶領(lǐng)大家一起揭開(kāi)TFLite格式的神秘面紗,看看它到底何許神也,并將如何編輯TFLite模型的分解步驟娓娓道來(lái)。

          本文引用地址:http://cafeforensic.com/article/202405/458554.htm

          首先,我們要借助一個(gè)叫做flatc的小工具,首先從github下載到的源碼:

          git clone https://github.com/google/s.git

          接下來(lái)進(jìn)入flatbuffer目錄,并創(chuàng)建一個(gè)名為build的文件夾并進(jìn)入:

          圖片.png

          在此目錄下打開(kāi)Windows PowerShell,并輸入cmake ..:

          圖片.png

          等待構(gòu)建完成:

          圖片.png

          現(xiàn)在我們看到build目錄中多出了一些vs工程,雙擊打開(kāi)FlatBuffers.sln, 并在flatc上右鍵選擇Build:

          圖片.png

          等待編譯完成:

          圖片.png

          我們可以在Debug目錄下找到flatc.exe。

          目前工具有了,接下來(lái)就是處理TFLite模型了,打開(kāi)模型需要一個(gè)schema.fbs文件,只要是電腦中有tensorflow的源碼,就能直接搜到:

          圖片.png

          接下來(lái)輸入以下指令:

          flatc.exe -b schema.fbs cifar10.

          可以看到生成一個(gè).文件:

          圖片.png

          想必大家還記得上期說(shuō)到的,TFLite格式的構(gòu)成:包含了操作符(Operator   code)、子圖(SubGraph)以及緩沖區(qū)(Buffer)。子圖中定義了模型中的子圖,包括各個(gè)Tensor,輸入輸出的Tensor,以及子圖中的各個(gè)算子。雙擊打開(kāi)所生成的文件:

          圖片.png

          那么接下來(lái),就不用小編再多說(shuō)了吧?有了json格式,就可以直接修改了。簡(jiǎn)單起見(jiàn),我們直接將模型的輸出變?yōu)槎鄠€(gè),比如將FullyConnected節(jié)點(diǎn)的輸出也作為模型輸出:

          圖片.png

          搜索json文件,找到FullyConnected節(jié)點(diǎn):

          圖片.png

          輸出標(biāo)號(hào)為11。找到模型的輸出節(jié)點(diǎn),并將11填進(jìn)去:

          圖片.png

          保存文件,將json文件重新生成TFLite格式:

          flatc.exe -t schema.fbs -- cifar10.tflite

          重新打開(kāi)cifar10.tflite文件:

          圖片.png

          可以看到,我們已經(jīng)成功將FullyConnected的輸出作為模型的輸出啦:

          圖片.png

          轉(zhuǎn)換成功!!! 當(dāng)然,更加高級(jí)的玩法,就請(qǐng)大家自行去挖掘了。小編在這里只是拋磚引玉~

          大致思路是先用flatc工具將TFLite模型轉(zhuǎn)換成json文件后,將TFLite模型的修改轉(zhuǎn)換為對(duì)json文件進(jìn)行處理。最后,再通過(guò)flatc工具將修改后的json文件重新生成TFLite模型。

          相信大家都能改造出屬于自己的TFLite模型,祝大家開(kāi)盲盒順利??!

          開(kāi)盲盒準(zhǔn)備:TFLite模型的開(kāi)盲盒體驗(yàn) http://cafeforensic.com/article/202405/458552.htm

          開(kāi)盲盒終極:TFLite模型終極開(kāi)盲盒來(lái)啦! http://cafeforensic.com/article/202405/458557.htm



          關(guān)鍵詞: flatbuffer NXP json

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉