- ベストアンサー
画像処理について
無数に細かい線が引かれてる画像から、無作為に100本線を選んで、その上にペイント等で線を引く作業を自動化したいと考えております。 現在は画像の上に1本ずつペイントで線を引いているため、時間を削減したいと思ったためです。 自動化することができるアプリやソフトがあれば教えて頂きたく思います。 また、そういったものがない場合にはプログラミングを学べば自作できるのでしょうか。その際のプログラミング言語は何が適しているでしょうか。 以上、宜しくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
やりたいことがイマイチ把握できませんが、コマンドラインから画像ファイルに手を加えることのできる「Image Magick」というツールがあります。 公式サイトは英語のみなので、以下のページなどどうぞ。 >IMAGEMAGICKの使い方日本語マニュアル >https://imagemagick.biz/ 画像に線を引くのは、上記ページの >17.imagemagickを使った図形生成1 >https://imagemagick.biz/archives/744 こちらに解説があります。 >convert <変換前の画像名> -stroke (color) -strokewidth (value) -draw ” line (X1) , (Y1) (X2) , (Y2) ” <変換後の画像名> こちらのコマンドで、線の色と太さ、座標を指定して、画像ファイルに線を引く事ができます。 ただ、Imagemagickで良く使うこの「convert」というコマンド、Windowsには同名の「convert.exe」という実行ファイルが存在します。 Windowsの方は、ファイルシステムの変換をするという全く別の機能のもので、ユーザーが使う機会は全くありません。 なので、Imagemagickをインストール後、imagemagick側の convert.exe を conv.exe にリネームして、「conv -draw ” line ~~"」のように使うか、Windows側の C:\Windows\System32\convert.exe と C:\Windows\SysWOW64\convert.exe を convertFS.exe などにリネームして、convert と打ったときにImagemagick側のものを使えるようにすると良いと思います。 ---- Imagemagickのコマンド群により、定型作業はバッチ化できます。 でも、「無作為(ランダム)に~」という部分はバッチ化できません。 その場合は、Windows Powershell などもう少しプログラミング的なことができるスクリプト言語で、ランダム値から座標設定して、convert.exeをそのパラメータで呼び出す、なんてことをすれば良いですかね…。 >【PowerShell】PowerShellの紹介と使い方について >https://soma-engineering.com/coding/powershell/what-is-powershell/2018/05/13/ まあ、得意な言語があれば何でも構いません。 私の場合はperlにImageMagickライブラリ(PerlMagick)をインストールして、画像オブジェクトのメソッド呼び出し感覚で図形操作をしたりします。
その他の回答 (1)
- AsarKingChang
- ベストアンサー率46% (3467/7474)
そもそも、その 「無数に細かい線が引かれてる画像」は 座標データはありますか? デジタルのデータでは、無数に線を引いた場合は それは「点」でしかなく「線」ではないのですよ。 なので、もともとの座標データが必要です。 それが取得できるなら、100本に対して何かをする。。 は、簡単にできますよ。