Blogこの広告は、90日以上更新していないブログに表示しています。Rustこんにちは、エンジニアの渡辺(@mochi_neko_7)です。Detection)を趣味開発で実装した話を紹介します。開発中というのもあり情報が少ないので使用例の一つとして参考になればと思います。ワークフローの最初のステップに実行される汎用的なもの*2であることで、実用性よりは個人的な勉強の色が強いです。組み込みも現実的であること*4から、プロダクションにおける実用性もパフォーマンス次第ではあるかもしれません。本記事では下記のような読者を想定しています。して公開する準備をまだ整えていないこと、クロスプラットフォームの動作検証ができていないことからすぐに製品利用することは難しいことにご注意ください。github.com使用している環境は下記になります。触ったことのある方なら直感的に触れるかと思います。バイナリサイズが大きくなってしまいます。フレームワークを提供します。パフォーマンスに難があり、実戦でそのまま導入するには懸念が出るケースもあります。ような言語によるアプローチも開発されています。ビルドしてブラウザで高速に動かすこともしやすいなどのメリットがあります。自身もまだ開発中だったりする点に注意が必要です。勉強にもなることから採用しました。Detection)のモデルです。)の位置、スコアを推定します。ベースとした構造を利用します。パフォーマンスを改良したものになります。使用されていますがロバストネスに課題があり、ニューラルネットワークを使用したモデルではこれを改善できるとのことです。モデルの二種類が実装されており、それぞれアーキテクチャもパラメータも異なります。パラメータファイル(.pth)も対応していますが挙動が不安定な部分*8もありますので、Safetensors(.safetensors)に変換して利用します。あったのでこちらを参考にさせてもらいました。実装はいくつかのステップを踏む必要があります。1と2の場合で処理に分岐があるため、上記ではそれぞれを明確に分けて実装しています。使用されるため、こちらも別で実装します。チェックだけするテストコードも書いておきます。実装を参考にしながら実装します。いうフローの推論をします。位置の回帰推定をします。形状、各成分の次元)があり、コンパイルは通っても実行時にそれらの不整合があるとエラーを出してしまいます。なっているか確認しながら実装をし、丁寧にテストコードも書いておきます。パラメータをロードできますので、それに合わせたロード処理も実装しておきます。変換するスコアのフィルタリングをするなどをして扱いやすいよう加工しておきます。実装して、同じ人物の顔の検出結果をまとめます。詳しい解説は下記を参照してください。構造体(FaceDetection)の変換処理もオプションで用意しておきます。順番になっている点に注意します。実装ではなぜかこの順番が不自然だったので修正をして実装をしています。内に実装を用意しています。したら後で本体側にも実装を用意するかもしれません。実行してみた例が下記です。一人の場合は多少角度がついていても検出自体はできていることが分かります。実装かパラメータ設定に不備があるかもしれません。コンパイルが通らないことなどあり、まともな結果をまだお見せすることができません。前後と想定より遅すぎるので、最適化すべき実装が多分に残っていると思われます。記載する予定ですので、少しお待ちください。Detection(顔の特徴点検出)の前処理としても利用されます。軽量さに価値が出るかと思います。いえ想定より少し精度が低い点、複数人の場合の処理が怪しい点、ベンチマークによる最適化対応ができていない点など課題も多く残っています。挑戦しようと思います。実装してみた感想もいくつか述べておきます。入門してみるのもありかもしれません。書いて高速化するケースも多いですが、再実装の手間やメモリ安全性の問題などもあります。ロードエラーになりました。基本的な取り回しを理解するこんにちは、エンジニアの渡辺(@mochi_neko_7)です。Parserで.srtと.vttのパーサーを書いてみた話こんにちは、エンジニアの渡辺(@mochi_neko_7)です。こんにちは、エンジニアのクロ(@kro96_xr)です。前回...2024-01-18Rust/DioxusでWebフロントエンド入門してみるこんにちは、エンジニアの渡辺(@mochi_neko_7)です。こんにちは、エンジニアのクロ(@kro96_xr)です。5はてなブログをはじめよう!Synamonさんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。