randomrookie’s diary

ふとした思い付きで始めました. たぶんそう長くは続きません.

学習記録:3 PythonとOpencv ふたたび

昨日の続きで画像処理の基礎中の基礎, 成分分離と特定要素のみの表示を行った.

まず, 黒画像から赤画像の生成.

すべての要素を0で初期化して得られる黒画像と, その各要素に255を加算して得られる白画像を分割して, 赤の要素のみ白画像のものを使ってマージすると, 以下のような赤画像が得られる.

f:id:randomrookie:20180817234848p:plain

次に, ベースに写真を利用すると, 以下のようになる.

使用した画像:

f:id:randomrookie:20180815235638j:plain

赤成分のみ:

f:id:randomrookie:20180817234818j:plain

青成分のみ:

f:id:randomrookie:20180817234831j:plain

 

赤だと花が明るく見えて, 青だと陰になって見えるのは, もともと明るい部分は赤成分が強めだから?だと思われる.

例によってgithubにまとめて貼っておく.

github.com

学習記録:2 PythonとLinuxとOpencv

Raspberry pi を使うようになってからLinuxのターミナルを操作する頻度が増えたので, 使ったコマンドを忘れないうちにメモしておく.

1. テキストエディタ起動 $ nano <ファイル名>

2. ディレクトリ移動 $ cd <ディレクトリ名>

3. ファイルorディレクトリ削除 $ rm <ファイル名orディレクトリ名>

4. カレントディレクトリ確認 $ pwd

5. カレントディレクトリ表示 $ ls

追加でTera termでファイルを移送する方法;

windowslinux:

  windowsからドラッグ&ドロップ

linuxwindows:

  Flie⇒SSH SCP⇒下部のボックスに送りたいファイルのパスと送り先を指定⇒Receive

 

それから, pythonopencvをインポートして黒画像の出力とsample画像の読み込み→グレースケールで出力を行ったので, ソースコードと入出力結果の画像を貼っておく.

入力画像:

f:id:randomrookie:20180815235638j:plain

出力:

f:id:randomrookie:20180815235714j:plain

黒画像:

f:id:randomrookie:20180815235735p:plain

ソースコード:

github.com

もう少しまとまった時間が取れたらがっつりパターン認識とかやりたい.

 

アップロードとかしてるまに日付更新して一日一投稿間に合わなかった...

活動記録:1 映画鑑賞「未来のミライ」

今日は細田守監督「未来のミライ」を見てきた. やっぱり映画館で見る映画はいいものだ.

この作品は流れの読みずらいCMを多数見ていたが, やはりうっすらと考えていた内容をいい意味で裏切ってくれた. タイトルが「未来のミライ」だけに, 主人公クンちゃん妹の未来ちゃんが主軸になってくるのかと思いきや, 確かに未来ちゃんはキーパーソンではあったが, 要所要所で登場するにとどまり始終クンちゃんの話だった. 穏やかな家族の情景は見ていてほっこりするし, 家族のテンションと幼いクンちゃんの内に秘めた感情の激しさとのギャップがいい味を出していたり始終目が離せなかった.

舞台設定が横浜なのもぐっと来た. おそらく根岸森林公園であろう公園も, 幼いころ自分も行ったことがあると思うと涙が出てくる.

あとなにより戦後の横浜は良い.  宮崎駿監督の「コクリコ坂から」を見たときも感じたが, 昭和の横浜はまさに”エモさ”の塊だ. この休み中ぜひとも一度横浜に足を運びたい.

一人小旅行の目的地

この夏の18きっぷ一人小旅行の目的地は...仙台に決定!!!

旅の期間は今のところ27~29もしくは9月の3~5としよう. 宿泊はできるだけ簡素に, 持っていくものもできるだけすくなく(バックパック1つ分). 移動はできるだけ18きっぷだよりで. まだ見ぬ未開の地東北へレッツラゴー.

ラズパイをもっていけば作業が進むのではないかという淡い期待と, 完全にすべてを忘れて旅行に浸りたいという気持ちとが交錯している...これは今後要件等.

あと夏が明けた後のインターン先をそろそろ絞り込まないと. 

進捗ゼロ

はい, またしてもやってきました. 進捗ゼロ日です.

まあ一日バイトしていた日に進捗を求めても仕方がないということで.

今日は今後の予定を少し書き出しておくことにする.

優先順位もあまり決まっていないのでとりあえず思いついた順に:

1. Python音声認識ライブラリの開発 (オープンソースのAPIとか覗くといいかも?)

2. ラズパイで対話型AIの実装

3. 一人旅in東北or四国or九州

4. ぶらり日帰り北関東

5. 絵描いたり短編書いたり

6. 基本情報技術者試験の勉強

7. Latexの練習

1の期限は8月末, 2の期限は9月末としておく. 3, 4はそのうち, 予算は合わせて4万以内. 5, 6, 7は継続して少しずつやりましょう. 

学習記録:2 Raspberry Piを使って強化学習

はい, というわけで早速日課が崩壊してこんな時間です. まあでも一応目標の1日1投稿は守れているのでセーフとしよう.

気を取り直して,

今回はRaspberry PiにTensorflowをぶち込んで強化学習をやってやりましたの回である. 

結果はこちら.

f:id:randomrookie:20180811221231p:plain

x-y座標軸上の2点を与えると, 最も近い1次関数を返してくれるサンプルプログラムを作って動かした. ちなみにコードはここから拝借した.

qiita.com

qiitaに投稿されてる皆様のおかげで半端な理解でここまでできて嬉しい. と言いつつこれを実装するまでで一番時間がかかったのはTensorflowのインストールと各環境のセットアップ. 何を隠そう日付が変わった頃に更新できなかったのはこれが理由である. 正確にはTensorflow以外にもmecab, gensim, opencv, jtalkなどなど盛りだくさんのモジュールを追加していて, 特にopencvのセットアップに躓いていたため, である.

Tensorflowのインストールで問題だったのは, そもそも私が使っているRaspberry Pi model 3 b+とOSのRaspbianは, 標準でTensorflowに対応しており, 外部からパッケージを落として展開しなくても, ターミナルのコマンドから取得と展開を行えるようになっている, ということに気が付かなかったこと. エラーを吐き続けるコマンドに意味もなく苦しめられた. それからopencv. こいつも参考にしたwebサイトよりも新しいバージョンがリリースされていて, 古いバージョンが消されていたことからえらく時間を食われた. linuxのターミナル操作に不慣れだったのも原因の一つだったかもしれない.

今回入れた各モジュールの紹介は次回あたりでしようと思う. 今日は疲れた.

一応せっかくアカウントも作ったので, 今回作った1次関数誤差修正プログラムのソースコードgithubに残しておく. 

github.com

それから元の記事にあったコード通りの点 (1, 4) (5, 2)と, 傾きが-1, y切片が0になるようにいじった(1, -1) (3, -3)では正常に動作したが, 傾き1, y切片1になるように(3, 4) (5, 6)にすると誤差がどんどん開いていく結果になった. これも後で確認が必要だ.

今日の進捗

ないです.

 

はい.

 

今日は朝からお出かけをしていたので進捗は皆無です.

強いて挙げるとすれば, 移動中に自然言語処理についてちょっと調べたのと, mecabを使ったpython環境での自然言語処理実験のチュートリアルを発見したので, 明日時間があるときに是非ともやってみようと思う. 

いつか相談に乗ってくれる対話プログラムが創りたい…

 

というわけでおやすみなさい.

 

忘れないうちに見つけたリンクをここに貼っておきます.

 

blog.aidemy.net