ChatGPTで画像処理をやってみた!
概要
ご無沙汰しております。😅
久々のエントリーとなります。今回は、流行りのChatGPTを使ってC++画像処理プログラミングはどこまでできるのか?を試してみました。
Youtubeとか見てると、エクセルデータを放り込むだけで統計解析とかやってたので、これはやらねば!と思った次第です。
ChatGPTの事始め
まずは、ユーザー登録から。
ここ のZennの記事を参考にしました。
ざっくり言えば、以下のような流れ。
- 公式から、「Try ChatGPT」を押す。
- ユーザー登録画面が表示されるので、画面に従い、メールアドレス、名前、携帯電話番号を登録。
- チャットの入力ページが表示されるので、いざ質問
Let's try 画像処理 with ChatGPT!
日本語でいいかどうか訪ねたところ、日本語OKとのことだったので、質問しました。
最初の質問は、
「画像データを平滑化するフィルタのC++コードを教えてください。」
するとすぐに、以下の回答がもらえました。
もう完璧じゃん!ほへ〜。😳
なるほど、ちょっと感心したのは…
なんだかなぁ…。
せっかくなので、OpenCV無しをリクエストしてみた
チャットで、上記回答の後で
「OpenCVを使わない方法を教えてもらえますか。」とリクエストしてみた。
すると…以下の回答がもらえました。
main関数と解説はさっきと同じだったので割愛しますが、まぁ、ここまでできるんだなぁと感心しました。
終わりに
久しぶりのブログとなりましたが、徐々に復活させたいと思います。
ではでは!😎
Ubuntu 20.04 LTS + VS CODE でPHPをデバッグする方法
ご無沙汰しております。せっかく書き起こしたので、ブログに残します。
PHP debug 環境の構築
実行環境
VSCODE の設定
Ubuntu の設定
ここを参照しましたが、ちょっと違う部分があったので、確認取りつつアレンジしました。
apache2の拡張モジュールをインストール
sudo apt install php-xdebug
PHP の設定ファイルである下記の2つのファイルの編集
xdebug の設定ファイルの編集
確認方法
apache2 の再起動
sudo systemctl restart apache2
ブラウザを開いて
http://localhost/info.php
- xdebug の設定を確認
- 上記の設定が反映されていいれ
M5Stack マイ天気予報への道
こんばんは。
明日からの始業を控えながら、仕事のことは一切考えないを貫いていた画処理おじさんです。
この冬休みは6日間と例年に比べて短く、また息子氏のお部屋大改造計画につきあわされたりと、なかなか忙しく過ごしていました。
M5Stack をいじろうにもナカナカまとまった時間が取れず、と言ってもテレビ見てたりでしたが、ようやく M5Stack に触ることができました。
試したのは、ネットワークに接続して OpenWeatherMap から天気予報を取得することです。基本は購入した書籍に従っただけですが、何とか WebAPI で情報をゲットするとこまで来ましたよ😂
写真は、取得した天気予報です。時間が変だなと思ったのですが、どうやら UTC らしく、9時間の調整が必要でした。
やっと、ここまで来たって感じです。
私の Twitter の TL 見てると、みなさんロボットアームのようなもので遊んでいるようです。うらやましいなぁ。
私はまだまだネットにつなげるくらいしかできておりません。今は書籍を基に、M5Stack のできる事の調査と簡単なアプリを作って試すって段階です。
天気予報にしても、表示含めてもうちょっと何か出来そうだな、と思案しております。
ではでは😎
M5Stack 9軸センサを使ってみた
こんばんは。
前回は、ボタン操作で画像の切り替えをやっていましたが、今回は9軸のセンサを使って、やってみました。
今回試したのは、9軸センサを使った本体の向きの取得です。具体的には、
- 寝かせた状態を電源OFF、立たせた状態をONとして画像を表示させる
- 回転で画像を切り替える
- 向きと画像を固定し、立たせたときの向きに合わせた画像を表示する
下記に動画を載せました。本体の向きに応じて、画像の向きも変えたかったのですが、力尽きてしまい、そこまではやっていません。M5Stackのライブラリに画像の回転はなかったようで…。自力で作るか、回転した画像を予め用意する必要があります。
画像の切り替え、オン・オフを9軸センサ使ってやってみた。力尽きて表示内容を本体の向きにに合わせるところまでは出来ませんでした😥IKEAの時計みたいな事は出来そうかも!#M5Stack pic.twitter.com/NpV8sjeoh3
— southVillage (@okakim55) 2020年12月6日
サンプルコードは、下記のGithubにありますので、よかったらどうぞ。
ではでは。
M5Stack 基本動作から実装中
こんばんは。M5Stackの続きです。
前回紹介した本を読みながら、粛々と基本的な機能の実装を始めましたので、ご紹介いたします。
今回実装してみたのは、
- JPG画像の表示
- 3ボタンの実装
- 画像表示の明るさを変更する
- シリアルによるプリントデバッグ
以下の動画には、左のボタンで画像が切り替わるってところまでを実装しましたが、その後に
- 中央のボタンで画像を明るくする
- 右のボタンで画像を暗くする
を追加しております。
#M5Stack
— southVillage (@okakim55) 2020年12月5日
ボタン操作と画像表示を実装してみた。世間では paper が注目されていますが、地道にやってます。😅 pic.twitter.com/It0K0PnGHJ
ソースコードは以下のGithubリポジトリにおいてあるので、もしよろしければ…。
ではでは。;)
M5Stack 参考図書を買いました
こんばんは。プログラミングが趣味でしかできなくなってしまった画処理おじさんです。
先日購入した M5Stack ですが、ググってコードをコピペして天気予報を表示させるだけじゃ、それだけで終わってしまいそうな気がしてきまして…😅
と言うことで、先日のお休みにジュンク堂に出向いて、マニュアル的な本を探してきました。
Amazon で検索して、Kindle のサンプルをダウンロードして物色ってのも良かったんですが、やっぱ実際に手に取って軽く読んだほうが良いですよね。
Amazon で M5Stack で検索すると4冊くらいの本がヒットしたので読み比べてみました。
で、購入したのが、「M5Stack」ではじめる電子工作 という本です。
「M5Stack」ではじめる電子工作 (I・O BOOKS)
- 作者:文孝, 大澤
- 発売日: 2019/04/01
- メディア: 単行本
決して読みやすいページ構成って訳じゃないんですが、どういった機能が、どうプラグラミングすれば実現できるかが、割としっかりと網羅されていたので購入に至りました。
1〜3章を読めば、一通りの機能の確認はできそうです。
- シリアル出力
- 画面の色
- 文字の位置、フォント、色
- 9軸のIMUの値のとり方
- 図形描画
- ボタンの使い方
- 音の鳴らし方
4章以降でも
等など、至れり尽くせりの内容です!
そして、お値段、1980円!
これは、買いでしょ!ってことで購入しました。さぁー!明日からがんばろう!
ではでは😎
M5Stack お天気表示までの道(1)
はじめに
M5Stack、どうやって遊んでいこうかと思いまして…。
前回の記事でも書きましたが、とりあえず天気予報の表示が面白いかな、と思い、やってみることに。
で、ググってみると、どうも同じやり方しかヒットしないんですよね。1年以上前の記事ですが、以下のリンクの方が先駆者、ということなんでしょうか。
それと、最近の Interface 誌にも M5Stack の連載記事があり、そこにも、この天気予報の表示の記事が載ってました。
ちなみに、第1回が天気予報、第2回が花粉情報、第3回が気象警報、第4回が鉄道の遅延情報をWebから情報を取得し、表示するって連載のようです。
今後のタスク
上記のリンクを元に、目標(=天気予報の表示)を達成するまでに超えなければならない壁を考え、タスク分割してみました。
PlatformIO の簡単な使い方
VSCode の画面左下のボタン
- 上の図の右から2番目:ビルド
- 上の図の右から3番目:アップロード(スケッチをPCからM5に)
- 上の図の右から5番目:シリアルモニター
実行とデバッグ
シリアル通信のモニタリングに挑戦
あれ?シリアルに出力されない
- 設定したが、何も表示されず…
やっと、シリアルモニターに出力された
VSCodeのPlatformIOの設定
- M5Stackのライブラリをプロジェクトにリンク
- 共通設定で、モニタースピードを115200 とした
main.cpp の書き方
- M5Stack.h をインクルード
- setup() 関数で M5.begin() を呼び出す!これか!
- これしないとシリアルに出力されなかった
最後に
- やっとタスクの1個が done となった…。
- まだまだ使い勝手が分からず。苦労しますなぁ…。
- まぁ、そこが面白いんだろうけど。
ではでは。