社会人研究者が色々頑張るブログ

pythonで画像処理やパターン認識をやっていきます

Pythonでバラバラな画像をいい感じに詰め合わせる

はじめに 今回は、サイズの異なる複数枚の画像をいい感じに1枚の画像にする方法を考えていきます。 画像サイズが同じであれば簡単に画像を並べる事が出来るのですが、今回はもう少しおしゃれな感じにしたいです。 こうでなく こう! 右の画像は適当に手で並…

pythonでPDFから画像を抽出する

はじめに 論文のサーベイを効率化するツールを作成しています。 今回は論文のpdfファイルから図を抽出してみたいと思います。 nsr-9.hatenablog.jp

pythonでPDFからテキストデータを抽出する

やりたいこと 論文サーベイ支援アプリを作成するに当たり,論文のPDFからテキストデータを抽出する必要があります. 今回は論文のPDFファイルからテキストデータを抽出する方法を実装します.

自然言語処理をやってみたい

はじめに このブログのタイトルにもあるように、平日は企業で研究開発業務に携わっています。 研究を生業にしていく為には、日々投稿される最新の研究論文を常にインプットしていかなくてはならないのですが、研究以外の業務も沢山あるので中々に難しい問題…

Python+Pytorchでイラストの生成

はじめに ブログを執筆したり職場で研究内容を人に伝える際に、積極的にイラストを用いるようにしています。 イラストを用いる事で、言葉で伝えるにはややこしい内容であっても、直感的に理解してもらえる事が多いためです。 しかしながら僕は,単純な図表な…

逆位相音楽用のイヤフォン作成

はじめに 前回、pythonで逆位相音楽の生成法を紹介しました。 逆位相音楽にすると、以下の様にオリジナルとはまた違ったテイストが出てきます。 オリジナル 逆位相音楽 この素敵な楽曲は魔王魂様で公開されている「世界が僕らに揺れるまで」です。 非常にお…

pythonで逆位相音楽

はじめに 音楽を聴いている時にイヤフォンジャックを上手に半抜きにすると、伴奏だけが聞こえる現象があります。 イヤフォンジャックのR/Lチャンネルが接続、GNDが未接続状態になった時に、RもしくはLが逆位相になり※それぞれの音を打ち消し合うことで生じる…

pythonで擬似的な立体音響

はじめに pythonを用いてモノラル音源から、擬似的な立体音響音声を生成してみます。 立体音響とは 人間は、目をつむっていても周囲の音が何処からなっているのか判断する事が出来ます。 これは、音が空気を伝搬する際にかかる時間や音の減衰などを、両耳の…

pythonで音声信号のリアルタイム周波数解析

やりたいこと pydubで読み込んだ音声信号に対し、Sliding Windowしながら周波数スペクトラムを表示したい。

pythonで音声信号のリアルタイムプロット

やりたいこと pydubで読み込んだ音声信号に対し、Sliding Windowをしながら波形をプロットしたい。 音声信号処理を行う場合は、読み込んだ信号全体に対して一気に処理を施すのではなく、短い時間の区間ごとに処理を施すそうです。 Computer Visionで言うなら…

pythonで音声ファイルの読み込み

やりたいこと pythonで音声ファイル(mp3, wav)を読み込み、時系列情報(numpy array)にしたい。

pythonで音声信号処理のことはじめ

はじめに 今までは画像処理や画像認識ばっかりやってきたのですが、ふと音声も画像と同じパターン認識技術の一つだなぁと思い、ここは一つ音声も触れるようになりたいなと思いました。 一昔前は音声信号処理を頑張るにはC言語の開発環境とライブラリ群をイン…

CHWとHWCの相互変換

やりたいこと opencvの画像は縦(Height)×横(Width)×チャンネル(Channel)のいわゆるHWC形式になっています。 それとは異なり、pytorchの画像ではチャンネル(Channel)×縦(Height)×横(Width)のCHW形式になっています。 numpy arrayとtorch tensorにおいて、HWC…

液体レンズの試作(2)

はじめに 前回、液体レンズの仕組みと基本構成について考えてみました。 nsr-9.hatenablog.jp 今回から実際に作っていきたいと思います。

液体レンズの試作(1)

はじめに 液体レンズとは、透明な液体で構成されたレンズの事で、電圧や力学的な力を加える事で屈折率を変えるレンズです。 少ないエネルギーで焦点距離を自由に変更できる為、産業用カメラやスマートフォン、次世代のメガネ等々への応用が期待される面白い…

Image Registrationによる外観検査

はじめに 前回、位相限定相関法によるImage Registration手法で遊んでみました。 nsr-9.hatenablog.jp Image Registrationの一つの応用先として、外観検査装置があります。 外観検査装置は、工場のラインで流れてくる製品を高速度カメラで撮影し、傷や付着物…

位相限定相関法による画像の位置合わせ(Image Registration)

はじめに 画像の位置合わせ(Image Registration)とは、異なる視点で撮影された2枚の画像の位置をいい感じにフィッティングする事です。 以下にサーベイ論文[1]にわかりやすい画像があったので、参照させてもらいます。 左上と右上の画像について、それぞれ…

Pytorchでグレースケール画像の着色

はじめに pytorchでGANをやっているのですが、乱数源から顔画像を生成するtutorialを繰り返すのも芸がないので、白黒画像(グレースケール)からカラー画像を復元するタスクをやろうと思いました。 今回は、GANで取り組む前にPix2Pixという教師ありの画像生…

PytorchによるGAN(1):全体像の把握

GAN GAN(generative adversarial networks)[1]とは、2014年に登場したNeural Networkの学習スキームです。 一般的なNeural Networkは入力ベクトルとそれに対応する正解ベクトルの写像(対応)関係を回帰する学習を行うのですが、GANでは敵対的学習という画期…

PytorchによるImage Segmentation(3)

はじめに nsr-9.hatenablog.jp PytorchによるU-NetのImage Segmentationの続きです。 前回はDataLoader部分を実装したので、今回はLoss Functionを実装して実際に学習、推論をやっていきます。

PytorchによるImage Segmentation(2)

はじめに nsr-9.hatenablog.jp この記事の続きです。 Pytorchを用いてU-NetのImage Segmentationをやっていきます。 前回はU-Netのモデルを定義したので、今回はDataLoader部分を作っていきます。

index画像からone-hotベクトル画像を作る方法

やりたいこと Image Segmentationはpixel単位でカテゴリIDを予測するタスクです。 教師画像の形式はLoss関数の関係上、カテゴリIDをそのまま扱うのではなく、One-Hot-Vectorで扱います。 One-Hot-VectorはカテゴリIDを2進数の様に扱うデータ表現であり、Neur…

PytorchによるImage Segmentation(1)

はじめに Image Segmentationは画像を領域ごとに分割する技術であり、Conputre Vision技術の中でも特に汎用性の高い技術です。 応用範囲は非常に広く、医療画像解析や自動運転技術、工場の自動化、ロボティクス等々の様々な分野に応用されています。 以下に…

pytorchのお勉強(6):GPUの利用

はじめに Pytorchのお勉強の続きです。 前回までに学んだ内容でDeepNeural Networkでやりたい一通りの事はできるようになりましたが、肝心のGPUを用いた高速化を学んでいませんでした。 GPUはGraphic Processing Unitと呼ばれる並列計算が得意な演算装置です…

pytorchのお勉強(5):モデルの保存と推論

はじめに pytorchのお勉強の続きです。 今回は学習したモデルの保存と、そのモデルを読み込み実際に推論を行います。

pytorchのお勉強(4):ネットワークの学習

はじめに pytorchのお勉強の続きです。 今回は読み込んだデータセットを用いてモデルを学習していきます。 pytorchでCNNの学習システムを開発する際の全体像を以下に示します。 今回勉強する所はピンク色の矩形で囲んだ部分です。

pytorchのお勉強(3):オリジナルのデータセット読み込み

はじめに pytorchのお勉強の続きです。 今回は学習するデータセットを読み取る所を学びます。 pytorchでCNNの学習システムを開発する際の全体像を以下に示します。 この画像で言うと、ピンクで囲った部分が前回までに勉強した部分で、青色の囲った部分が今回…

pytorchのお勉強(2):誤差逆伝播とパラメタの更新

はじめに pytorchのお勉強の続きです。 今回は定義したNetworkにデータを与えてネットワークを学習する所を学んでいきます。 今回もこのチュートリアルサイトを参考にしています。

pytorchのお勉強(1):インストールとネットワークモデルの定義

はじめに 現代でComputer Visionの研究を行うならば、Deep Neural Network(DNN)の活用は必要不可欠になっています。 僕もその例に漏れず、普段からDNNのpythonライブラリを使用し研究活動を行っています。 DNNのpythonライブラリは様々なものがありますが…

opencvの色にnumpy arrayを使う方法

やりたい事 cv2.lineとかcv2.rectangleの描画色を、numpy array(変数)で指定したい