2024年5月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
無料ブログはココログ

« ・暗い光源のほうが色がついて見える | トップページ | ・夜間桜を照らす場合の定常光とストロボの違い »

2023年2月19日 (日)

・ChatGPTで自分だけの画像処理ソフトを作る

2022年に、これはすごいと話題になったサービス、chatGPT

AIで色々な回答をしてくれるチャット形式のサービスです。

そんなのAIりんなとか昔からあったじゃんと思われるかもしれないが、
できることが段違い。


例えば天の川をアーチ描くように撮影する方法が知りたい場合。

AIりんなに聞いてみた。
Photo_20230219012201

イラっ。

ChatGPTに聞くとこんな感じ。


Gpt

かなり具体的に教えてくれます。
もうこのブログいらなくない?ってくらいに結構具体的に答えてくれる。
それだけでなく、プログラミングもやってくれます。
Panorama

プログラミングの知識がなくてもできちゃいます!
コードの解説もしてくれる。


さて、最近私が解決したいと思っている問題が
星の軌跡写真を撮った時に、飛行機の線が映り込んじゃうこと。
Resize182470

一枚一枚飛行機の線を黒で塗りつぶしていけば解決できるのですが
面倒くさい。

じゃあ、飛行機領域を自動で認識して自動で黒く塗りつぶすプログラムを作ればいいじゃない。
だけど、飛行機の線と星をちゃんんと区別して飛行機の線だけ黒く塗りつぶしてほしい。
そんなアルゴリズムが思いつかない。

ChatGPT様お願いします。

おおー、なるほど。こうやれば飛行機の軌跡を消せるのか。
だけど飛行機の軌跡って直線とは限らないんだよな。

Hikoki1

あとインターバル撮影をする関係上、前後の二枚の画像から飛行機の検出ができるはず!
Hikoki2

オーできた!
閾値をコマンドラインから入力できるような仕様のほうが融通が利くはず。
Hikoki3

気を利かせて、入力する画像も引数で与えられるようにしてくれた。
この作成してくれたスクリプトを用いて以下の二枚の画像から
飛行機の線を黒塗りしてもらおうか。
Resize182472 Resize182471

 

結果
_raw_imgp1403_removeplane _raw_imgp1403_removeplane
ちゃんと飛行機の軌跡部分を黒塗りしてくれている!
だけど二枚の画像で飛行機いないほうも塗っちゃってるじゃん

これを解決するためにChatGPTにいろいろ質問したのですが
なかなかうまくいかなかったのでここは仕方なく自分で実装しました。

================================
#それぞれの画像に対して、飛行機がいないほうは黒塗りをやめる
imgdeff1 = cv2.absdiff(img1,img1org)
imgdeff1 = cv2.cvtColor(imgdeff1, cv2.COLOR_BGR2GRAY)
ret, thresh1 = cv2.threshold(imgdeff1, 100, 255, cv2.THRESH_BINARY)
mask1 = cv2.medianBlur(thresh1, 5)

# 画像にマスクを適用する
masked_img1_1 = cv2.bitwise_and(img1, img1, mask=mask1)
masked_img1_2 = cv2.bitwise_and(img1org, img1org, mask=cv2.bitwise_not(mask1))
result1 = cv2.add(masked_img1_1, masked_img1_2)
================================
ただ、画像の差分をとる方法とか二値化する方法とかはChatGPTに聞きました。
google検索でも調べられますが、chatGPTだとこれまでのやり取りを考慮して
的確な方法を教えてくれる。

これまでは2枚の画像だけ。フォルダ内の画像を順次読み込んで全部自動で処理してくれるようにしてほしい・
Hikoki4

ハイできました。

上のコードだと飛行機を除去する部分が省略されているので今までに作ったものとマージして完成!

ダウンロード - plane4.py

 

ついでに単枚画像で直線部分を検出したときにそこも黒塗りするようにしました。


飛行機の線を消した後引かう明合成するとこんな感じに。
Resize182469  

まだ完璧じゃない部分がありますが、パラメータの設定とか調整すればいい感じになりそう。

 

« ・暗い光源のほうが色がついて見える | トップページ | ・夜間桜を照らす場合の定常光とストロボの違い »

写真講座」カテゴリの記事

コメント

ChatGPT、ここまでやってくれるんですか。ソースにはちゃんとコメントも入ってすごいですね。仕様書書くのもこんな感じで作って、てお願いすれば作ってくれそう。仕事なくなっちゃいますね・・

コーディング専門職は今後厳しいかもしれないですね。
上手に仕様書を書かないとまだまだ思ったのができてこないので
AIを上手に使うエンジニアが今後求められる人材かもしれません。

コメントを書く

(ウェブ上には掲載しません)

« ・暗い光源のほうが色がついて見える | トップページ | ・夜間桜を照らす場合の定常光とストロボの違い »