Node-REDとAutomatorでプライバシーマスク作成を自動化する河津正和
View Slide
河津正和● セーフィー株式会社所属● バックエンドエンジニア/テクニカルディレクター● 本業の他に個人でも仕事を受けてます○ サービス立ち上げ系○ 開発運用系● LT主催のコミュニティをいくつか運営してます○ Technical Director Meetup○ CivicTechLTTwitter:@kawazu255_Qiita:kawazu255note:kawazu255
こんなことありませんか??一般参加者の人を募ってオンラインイベントを行うアーカイブをYouTubeに残したい!参加者の顔が映ってる・・ぼかしを入れたい!
動画内の人の顔に自動でぼかしを入れられるシステム欲しいモチベーション
画像から人の顔を判別しぼかしを入れる処理をノーコードで作れるか試行錯誤した話今日お話しすること
Macのため使用できず・・・(すみません)
Automator
Automatorとは?様々なワークフローを自動化して簡単に作業を効率化できる、Macの標準アプリケーション
Automatorレシピ例● お気に入りのWebサイトから画像を探して自動的に特定のフォルダに保存● Finderで特定フォルダの中にある大量のファイルの名前を一瞬で変更● Wordファイルを瞬時にPDFファイルにする
特定のディレクトリに画像を格納画像にぼかしがかかる処理を作ってみる!
フォルダアクション特定のフォルダに項目が追加されることで、処理が実行される
特定のフォルダに項目が追加されたら発火別のフォルダにファイルコピーブラー(ぼかし)処理を入れる
Demo
人の顔は判別できない顔にのみぼかしを入れたい
処理フロー1. 特定のディレクトリに画像ファイルを置く2. Node-REDにて顔画像判定3. 顔座標をJSONファイル形式で特定のディレクトリに保存4. AutomatorがJSON設置を検知5. 顔部分のみにぼかし処理を入れて保存
※enebular editorを使いましょう
※enebular editorを使いましょうWatchノード特定のディレクトリにファイルの追加があるか監視する
※enebular editorを使いましょうfile inノードファイルの読み込みを行うWatchノードと連携すれば、特定ディレクトリに追加されたファイルをそのまま読み込める
※enebular editorを使いましょうposenetノード顔のパーツの位置や骨格の位置(ボーン)を取得できるnode-red-contrib-tensorflowモジュールが必要参考:https://qiita.com/kazuhitoyokoi/items/e4da2dc1c39c0a11569e
※enebular editorを使いましょうfileノード特定のディレクトリにファイル出力ができるノードここでは、posenetノードで解析された結果をJSON形式で保存する
特定のフォルダにJSONファイルが追加されたら発火JSONからぼかし領域を割り出しぼかし処理を入れる※ここで全ノーコード方針を断念(くやしい)
ちなみに・・・● node-red-contrib-image-toolsというノードで、Node-RED上で画像処理を行うことができる。● 中身はJimpというライブラリを使用していて、ぼかし(blur)処理もある● ただ、ノード追加時にエラーになってしまって未確認○ ノードの追加が1件しかできない(OSX Big Sur)● 上手くいけば、Node-REDで完結して、かつノーコードで顔認識&ぼかし処理までいけるかも
やってみた感想● 自動化したい処理に対してノーコードを組むには、いろんな調査や試行錯誤が必要○ ノーコードを諦めざるを得なくなる場合も● どのツールでど何ができて何ができないのかというのは、触ってみることでわかってくる● 100%欲しかったものができなかったとしても、プロトタイプという位置付けにはなる○ コードを書かなければいけない箇所がはっきりする○ 業務でテスト導入して、そもそも使われる機能かを判断する