Free Trial

ディスカッション

答えを見つけ、質問し、Alteryx の専門知識を共有してください。

Designerの標準ツールで画像処理してみました

gawa
15 - Aurora
15 - Aurora

Intelligence  Suiteですと画像処理系のツールが色々あるのですが、いかんせんお値段が高いので手が出しずらく・・・Designerの標準機能で画像処理に挑戦してみました。

24bitのBitmap画像を入力にして、①エッジ抽出、②グレースケール化、③色素反転、をやってます。

※画像は標準画像データベースより拝借しました

↓左から順に、元画像、エッジ抽出、グレースケール化、色素反転

gawa_0-1674186342854.png

 

処理としては、画像をブロブ入力で取得、ビット毎のデータに整理し、そこからヘッダ情報とイメージデータに分けて、イメージデータを各々の処理に応じてデータ加工し、再度ブロブデータにがっちゃんこして出力する感じです。メインのマクロの中身はこんな感じ↓

エッジ抽出に関しては、ピクセル毎に周辺8マスのピクセル情報をもとに計算するので、↓のマクロ中に更にバッチマクロを2重でいれて処理させています。エッジ抽出だとピクセル数だけ処理が繰り返されるので、256x256の画像1枚で3分くらいかかるので処理は重めです。

gawa_1-1674186778307.png

 

PythonとかRだとこの手のライブラリは色々ありそうですが、WFを共有・発行するときにライブラリを入れてもらったりするのが煩雑なので、標準ツールだけでできると何かと便利だろうと思い、面白そうだったのでやってみました。

一応、WFも置いておきますので、ご自由にお使いください。

エッジ処理は重たいので、少ない画像で試すか、マクロの質問で「エッジ処理しない」に☑つけて処理をバイパスしてもらうこと推奨です。

gawa_2-1674187312826.png

 

2件の返信2
AkimasaKajitani
17 - Castor
17 - Castor

@gawa さん

 

すごいですね!

さすがにバイナリデータの処理はやったことないです!!ちょっと参考にさせて頂きます。

gawa
15 - Aurora
15 - Aurora

@AkimasaKajitani さん、

汚いワークフローですが、参考になれば幸いです。

AoC完走したので、バイナリデータの処理くらいではへこたれない精神力が身につきました!笑