Intelligence Suiteですと画像処理系のツールが色々あるのですが、いかんせんお値段が高いので手が出しずらく・・・Designerの標準機能で画像処理に挑戦してみました。
24bitのBitmap画像を入力にして、①エッジ抽出、②グレースケール化、③色素反転、をやってます。
※画像は標準画像データベースより拝借しました
↓左から順に、元画像、エッジ抽出、グレースケール化、色素反転
処理としては、画像をブロブ入力で取得、ビット毎のデータに整理し、そこからヘッダ情報とイメージデータに分けて、イメージデータを各々の処理に応じてデータ加工し、再度ブロブデータにがっちゃんこして出力する感じです。メインのマクロの中身はこんな感じ↓
エッジ抽出に関しては、ピクセル毎に周辺8マスのピクセル情報をもとに計算するので、↓のマクロ中に更にバッチマクロを2重でいれて処理させています。エッジ抽出だとピクセル数だけ処理が繰り返されるので、256x256の画像1枚で3分くらいかかるので処理は重めです。
PythonとかRだとこの手のライブラリは色々ありそうですが、WFを共有・発行するときにライブラリを入れてもらったりするのが煩雑なので、標準ツールだけでできると何かと便利だろうと思い、面白そうだったのでやってみました。
一応、WFも置いておきますので、ご自由にお使いください。
エッジ処理は重たいので、少ない画像で試すか、マクロの質問で「エッジ処理しない」に☑つけて処理をバイパスしてもらうこと推奨です。