今年もこの記事を含めて、37+30+29+29+33+30+28+38+35+36+30+28 = 383 記事書きました。技術的な記事ばかりじゃなく、映画を見たよとか、走ったよという記事もありますが、よく記事を書いたと思います。

記事で書いてきたことは、やはり、畳込みニューラルネットワークをFPGA で実装したという記事が多いです。今年は、「ゼロから作るDeep Learning」の環境から、Keras + TensorFlow の環境に乗り換えることができました。それに、HLS ストリームを使用して、CNN のテンプレートを作ることもできました。このテンプレートを使用するとパラメータを入れてインスタンスするだけで、CNN が構成できるようになりました。
そうそう、白線間走行用CNN で走る Zybot に自宅に作ったコースを走らせるというプロジェクトですが、うまく行かなくて止まっています。来年は、Ultra96 に換装してガボールフィルタを使った自作走行システムで走らせながらCNN の学習データを取得するか?もしくは、自分でラジコンで走らせながら学習データを取得したいですね。そして、その学習データを元に白線間走行用CNN の学習を行ってZybot に白線間を走らせたいです。

それに常用しているVivado HLS 、もうこれなしではIP 作れないと言っても過言ではないかも?です。今年は、筑波大学でVivado HLS のセミナをやったのと、近隣の研究所でVivado HLS のセミナを開催中です。

そうそうUltra96 を使うようになって、低速コネクタに挿入してPMOD に変換する変換基板も作りました。そして、カメラを接続して、BMPファイルを作れるのを確認できました。その過程でOV5642 も使えるようになったのが嬉しかったです。来年はできればコミケなどで頒布したいですね。

2018.3 から SDSoC もWebPACK が出て無料で使えるようになりました。SDSoC はチューニングがVivado HLS ほどできないところはありますが、使っていきたいと思います。

トランジスタ技術11月号に、「手書き数字認識用FPGAニューラル・ネットワーク・システムの製作」という題名で書かせていただきました。付録のDVD にZYBO Z7-20 用のMNIST のCNN を使用した判定システムのVivado プロジェクトが入っています。ただ、して要しているカメラのMT9D111 が廃番になってしまいました。その代わりにOV5642 カメラのシステムを開発中です。