nyokeの研究日記

備忘録的な.

DNNによる画質評価の情報収集

10年ほど前(ちょうどAlexNetが世間を騒がせたぐらい)にBag of Keypoints表現を使って,視覚的概念の定量評価に関する研究に取り組んでいた.当時はビッグデータという言葉が流行し始めたころで,職人的な画像特徴量の設計に関する研究が盛んだった記憶がある.私はその当時から画像認識分野の知見をなんとか画質評価に導入したいともがいていた記憶が蘇ってきました.

さて,今日はDNNによる画質評価の情報収集結果をまとめた備忘録を.良いサイトを見つけた.

Image Quality Assessment | Papers With Code

ここから芋づる式に調べたところ,今まさにやりたいと思っていた文献が見つかった(文献というか欲しいデータセットがあった).

PIPAL

IQA(Image Quality Assessment)用のデータセットで,以下の特徴が珍しいというか今までなかった. * 種々の画像処理(Blurなど)だけでなく,GANによる画質改善を行った画像に対する主観評価値 を持っている.これは使えそうだ.

備忘録的なブログ再開

ふと思い出してはてなブログを開いてみた.最後に書いた記事の日付が10年前だったので震えている.時が経つのがはやすぎる.どうりでおっさんになった訳だ.最近は物忘れが酷くなり,調べたことをどこかにメモしておかないと思い出せないことが増えた.ということもあって,備忘録的な研究メモとしてブログを再開することにした.研究のアクティビティ記録にもなるし10年後に見直したときに,今回同様に震えたいとも思う(あーおじいちゃんになったなぁと).

この10年で世の中がまた様変わりした.僕の青春はITの革新と共にあるが,今の若い人たちも大人になったら同じような感慨にふけるのだろうか.

私の専門は画質評価(人間による主観評価とその推定法)である.理論と言うよりも感性工学より立場から研究を続けている.これまでは心理物理実験を主として工学への知見展開を目指してきたが,ずっと避けていたDeep Neural Networkの世界に足を踏み入れたこともあって,色々と環境整備に苦労している(以前は研究用のメイン言語はrubyだったが、最近はPythonばっかり).

画質評価とAI界隈のネタをリンクさせた備忘録ネタを書いていきたいと思う.つづく.

Mac OS X Lion上のXCode4.2でARToolKitを使う

想定環境

まずは,ARToolKit.xcodeprojを開く.

そのままでビルドするとエラーがでるので,以下を修正.

  • プロジェクトの設定で,

 - [Architectures]を ”32-bit Intel に変更
- [Base SDK]を ”Latest Mac OS X (Max OS X 10.7)”に変更

これで無事にビルドは通るようになるのですが,環境によって使用カメラの解像度が高い(1024×1024を超える)場合,実行時に落ちます.こ

- arLabeling.cの修正
- 38行目:#define HARDCODED_BUFFER_WIDTH 1920
- 39行目:#define HARDCODED_BUFFER_HEIGHT 1200
(1920, 1200の部分は使用するカメラの解像度に合わせて読み替えてください.上記例では,FULL-HDの解像度を想定しています.)

これで無事に動作するようになります.

ApacheからRuby on Railsアプリケーションを呼び出す(Phusion Passengerの利用)

ここが詳しい.

Phusion Passengerのインストール

gemを使ってインストールする.(※ root権限でインストールすること)

$ gem install passenger
$ passenger-install-apache2-module

httpd.confの編集(1)

passenger-install-apache2-moduleでインストールの終盤に,画面に"Please edit your Apache configuration file, and add these lines:"というメッセージとともにhttpd.confに追加すべき設定内容が表示されるので,指示に従ってhttpd.confを修正する.以下は例.

LoadModule passenger_module /Users/nyoke/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/passenger-3.0.12/ext/apache2/mod_passenger.so
PassengerRoot /Users/nyoke/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/passenger-3.0.12
PassengerRuby /Users/nyoke/.rbenv/versions/1.9.3-p0/bin/ruby

httpd.confの編集(2)

passenger-install-apache2-moduleでインストールの最後には,httpd.confの設定例が表示される.以下は例.

Ruby on Rails 3.2をインストール

rbenvで最新版のRubyが使えるようになっていることを確認する.

$ ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.4.0]

と表示されればOK.

次にRubyGemsをアップデートする(念のためrbenv rehashする)

$ sudo gem update --system
$ sudo gem update rake
$ rbenv rehash

それでは,Ruby on Rails 3.2本体をインストール(念のためrbenv rehashする)

$ sudo gem install rails --no-ri --no-rdoc
$ rbenv rehash

Rubyの環境整備

※この解説ではパッケージ管理ソフトとしてHomeBrewを使います.HomeBrewのインストールの説明はコチラ

Rubyのバージョン管理ソフトrbenvのインストール

$ brew install rbenv
$ brew install ruby-build

.zshrcに以下を追加

#Ruby-envの設定
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"

readlineをインストール

$ brew install readline
$ brew link readline

ここで,Xcode4.2以降を使っている人は別途gccを導入する必要がある.ここからダウンロードしてインストールしておく.
(※ Xcodeに付属のGCCはどうなっちゃうの?という疑問は後ほど調査します)

rbenvを使って欲しいバージョンのRubyをインストール

$ CONFIGURE_OPTS="--with-readline-dir=/usr/local" rbenv install 1.9.3-p0
$ rbenv rehash

ちなみに,インストール可能なRubyのバージョンは以下のコマンドで確認できます

$ rbenv install

rbenvでインストールしたRubyのバージョンを確認する.複数入れた場合にはリストで表示されます.

$ rbenv versions

システムデフォルトとして使用するRubyのバージョンを選択する

$ rbenv global 1.9.3-p0
$ ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.4.0]