2024年2月
        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    
無料ブログはココログ

« 2022年12月 | トップページ | 2023年3月 »

2023年2月

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  

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

 

2023年2月 5日 (日)

・暗い光源のほうが色がついて見える

水銀灯はかなり緑っぽい色の光源ですが、
人間の目には白い光に見えます。

Imgp7782

人間の目は、明るい光源ほど色味が感じられにくいという特性があります。
そのため、まぶしく輝いている水銀灯は色が感じられない。

1_20230205154301
右の輝度が低い緑のほうが色がついているように見える

テレビの画面とかもそうですが、白いと思っていても白くないものはたくさんあります。

 

« 2022年12月 | トップページ | 2023年3月 »