ubuntuにopencvを入れる方法(ubuntu16.04,cuda8.0,gtx1070)

経緯 cuda,cudnnを導入したubuntuにopencvを導入しようとすると、make時にエラーが頻発し、なかなか進まない。 一方で、anaconda等を使用してconda install cv2等とするとffmpegがインストールされないため、imshow等の一部の関数が動作しない。よって、今回…

Jetson TX1,TX2のtegrastatsの各項目の意味とグラフ表示

tegrastatsの各項目の意味 Jetson TX1,TX2において、ホームディレクトリにある以下のtegrastatsというスクリプトを実行することで、TX1,2の現在のステータスを確認することができる。 $ sudo ~/tegrastats RAM 1374/3995MB (lfb 1x4MB) cpu [0%,0%,0%,0%]@17…

pythonを使って、ether(LAN)経由で測域センサURGのデータを取得する方法(ROS不使用)

概要 シンプルなプログラムを動かしたいとき一々ROSに頼るのは面倒。よって、ROSを使わなくともURGデータを読み込めるようにした。 ネットを探してもシリアル通信を使ったデータ取得ライブラリばかりでetherを使ったライブラリが殆ど無い。 ようやく見つけて…

anacondaを使ってubuntu16.04にchainer, openCVを導入する

導入のきっかけ これまでpyenv,python2.7を使って開発を行っていたが、python3系が必須のライブラリを使用する必要があり、anacondaに乗り換え。 使ってみると、複数のpython環境を乗り換えることができ、pyenvよりも便利かも。 他でもいろいろ書かれている…

nvidiaドライバを入れたubuntuにVNC接続する際に一部のプログラムが起動しない(segmentation fault)場合の解決策

概要 タイトルのとおり、nvidiaドライバを入れたubuntuサーバーに対して、VNC接続をすると、一部のプログラムが起動しない問題が発生したので、原因とその解決方法を記載する。 環境 Ubuntu16.04(サーバー側) vncにてmateのdesktop環境を使用しログイン chai…

ubuntu16.04でkubuntuをインストールしようとするとエラーが出る→その後の対処法

kubuntuの導入失敗 unityから脱却しようかと思い、ubuntu16.04にkubuntuを入れようとしてみた。 ネットで調べると、 $ sudo apt-get install kubuntu-desktopとすれば一発でインストールできるとの事だったので実行してみると途中までうまく行き・・・・ con…

cv2で動画読み込み時にerror: (-215) size.width>0 && size.height>0というエラーが出る場合の対処法(Windows)

概要 ネット上でよく見るWindowsへのcv2導入方法に従ってcv2を導入すると、動画読み込み時(cv2.videoCapture()使用時)に"error: (-215) size.width>0 && size.height>0"というエラーが出てくる。 これはffmpegのDLLがないため、動画が開けずに出てくるエラー…

sshfs中に通信が切れた場合の対処法

sshfsの問題点 機械学習を行う際、基本的に自宅サーバーのフォルダをsshfsでマウントして、作業を行っている。t-nkb.hatenablog.com しかし、アンマウントを忘れて通信を切断、スリープしてしまうとマウントポイントが残ったままとなり、以降このディレクト…

linux screen中にマウスホイールでスクロールする方法

sshが切れても学習が継続できるよう、最近はscreenを使って学習をすすめることが多い。 携帯からでも気軽に途中経過見えるし。 しかし、screenの画面はスクロール等が実行できず、過去のログを閲覧することができない。t-nkb.hatenablog.com困って検索したと…

cv2(openCV)で動画の途中から再生する方法

概要 openCVで動画の任意の地点から再生を開始する方法をまとめる。 これまではwhileループで1フレームずつ取得し読み飛ばしていた。しかし、この方法はあまりにも無駄が多い・・・時間もかかるし、HDDにも悪影響が出そう。 ということで、もう少し効率の良…

pythonでgooglemap情報を扱う方法まとめ

概要 地名から座標(緯度経度)、詳細住所を取得する 特定の座標周辺の地図を画像として保存 概要 googlemapデータを機械学習の元ネタにするために、データの取り扱い方を調べたのでまとめておく。 地名から座標(緯度経度)、詳細住所を取得する pipでイン…

フォルダ内の全画像ファイルに対して一括処理を行う(python)

機械学習を行う際、webでスクレイピングした大量の画像ファイル等を一括で操作したくなることが多い。 その場合ファイル名も拡張子もバラバラで保存されるため、処理する際にいつも悩む。 毎回調べるのもバカらしいので、サンプルとしてまとめておく。 pytho…

ubuntuからgoogle remote desktopを削除する方法(deja-dup-moniter暴走時の対処法)

deja-dup-moniterが起動直後にPCのメモリを全部使用し始めて、パソコンが全く動かなくなったので調査。 メモリ24GBもあるのに全部使いやがるとは・・・。調べると、ubuntu16.04とgoogle remote desktopの相性が悪いらしく、deja-dup-moniterと合わさると悪さ…

pix2pix(GAN)を使ってモノクロのおそ松くんをカラー画像にしてみた

前半に着色結果 後半にpix2pixの導入方法、学習方法 という構成になっている。手っ取り早く導入したいならば、「作業内容」からみるのがオススメ。 概要 結果 人 人工物 その他 (追記)漫画のカラー化もしてみた 作業内容 torchのインストール pix2pixを導入 …

英語論文の文末を整形し、スムーズにGoogleに翻訳させる(javascript版)

概要 Google翻訳の精度は大幅に向上したが、論文をコピペして翻訳しようとすると文末、行末の"-"や改行のせいで、まともに翻訳できない ↓ Google翻訳が理解できるよう、翻訳前に成形するスクリプト書いた!便利!のjavascript版 pythonだと、いちいちファイ…

英語論文の文末を整形し、スムーズにGoogleに翻訳させる(python版)

概要 以下リンクの通り、Google翻訳の精度は大幅に向上したが、論文をコピペして翻訳しようとすると "-" や改行のせいで、まともに翻訳できない ↓ Google翻訳が理解できるよう、翻訳前に成形するスクリプト書いた!便利!やったことはしょぼしょぼだけど、翻…

CNN学習時のDropoutの比率(DropoutRatio)についての知見

背景 つくばチャレンジにて、CNN、SlidingWindowを応用して、看板検出を行った。 今回は、学習時のDropout率をどう変えたらいいかについての知見をまとめる。 この辺りの小細工は当たり前に思いつくことだが、あまりまとめられていないように思う。t-nkb.hat…

google翻訳が進化しすぎていてやばい

GOOGLE翻訳がDeepLearningで大幅に精度向上したと聞いて、試してみた。 結果としてはかなり使える!!! 英語の苦手な僕にとって、これまで英語論文の購読がストレスのもとだったけれど、これで大分緩和されそう。nlab.itmedia.co.jp SPP-NETの原文を翻訳さ…

【つくばチャレンジ2016】DeepLearningを使ってリアルタイム看板検知をしてみた

つくばチャレンジとは 「つくばチャレンジ」は、つくば市内の遊歩道等の実環境を、移動ロボットに自律走行させる技術チャレンジであり、地域と研究者が協力して行う、人間とロボットが共存する社会の実現のための先端的技術への挑戦です。(下記HPから引用)…

pickleをjoblibに変えて保存データサイズを圧縮!

経緯 以前のエントリで述べたとおり、Pickleで1.9GB以上のデータを保存しようとすると、エラーが出て保存できない問題があった。 この問題を、joblibを使うことでコードをほとんどいじらずに解決できることがわかったので、まとめておく。t-nkb.hatenablog.c…

真にコスパのいいGPUはどれか、TFLOPS換算で比較してみた(DeepLearning•機械学習用)[2017/03/14更新 gtx1080ti追加]

経緯 友人のPC購入のアドバイスをしていてふと「純粋にTFLOPSと価格だけで比較した場合、どのGPUが一番コスパがいいんだろう?」と疑問に思ったので簡単に調べてみた。 radeonはcuda使えないから論外。GTX900以下、TITAN等は一般的ではないため除外してある…

pythonのpickleでSystemError: error return without exception setが出る原因

pythonで大きなデータをpickleで保存しようとすると、 SystemError: error return without exception setと出て保存ができない。 調べてみると、どうやらpython2系のバグの模様、およそ1.9GB以上のデータを保存しようとするとエラーになる。 これを解決する…

JetsonTK1、TX1にopenCV(cv2も)を導入する方法

openCV導入方法 導入に失敗した場合 参考サイト JetsonTK1にOpenCVを導入するために、いつもどおりopenCVをコンパイルしてみた・・・が、環境が特殊なため、うまく動作しない。t-nkb.hatenablog.com いろいろ探していくと、NvidiaがJetson用のOpenCVを用意し…

sftp接続でサーバー上のフォルダをマウント(mac,ubuntu)

導入の経緯 macの場合 osxfuse,sshfsのインストール sshfsの実行 ubuntuの場合 感想 (追記) 導入の経緯 以前、サーバー環境の構築で、SCPにてファイル転送を行うことにすると決めた。 それ以来、Filezillaを使ってサーバー上のファイルを見てきた。t-nkb.h…

フォルダ分けされた大量の学習画像を一括で読みこむ方法(python)

chainerのサンプルを一通り試して、いざ自分のデータセットを読み込ませよう!と思ったときにまずつまずくのがここ。 どうやって自分の画像データを読み込ませたらいいの??と最初悩んだので、まとめておく。 学習データのファイル構造 まずは、学習データ…

SSHの接続が切れても継続して学習させる方法(screenを使った実行)

sshでログインしてそのまま学習を実行してしまうと、sshのリンクを切ることができず、ノートパソコンを閉じることができなくなってしまう。 学習途中で通信が切れて、これまでの結果が全部消える、なんてことに・・・・。そこで、基本的にはscreenを使ってセ…

pythonでlistをファイルに保存し、読み込む方法

listを一時的にファイルに保存し、読み出したいことが良くある。 いつもちょっと考えるので、まとめておく。pythonだったらpickle使う方が一般的なのかも知れないけれど…。# 以下プログラムに誤りがあったため修正しました。 コメントにてご指摘いただき、あ…

GPUのカタログスペック(TFLOPS)と学習時間の関係(chainerのMNISTサンプルからの考察)

趣旨 学習結果(時間) 考察 結果からの知見 高速なGPUから低速なGPUに移行する場合: 低速なGPUから高速なGPUに移行する場合: AI 趣旨 GPUを交換した場合の学習時間の変化を試算したい。 今回は学習時間の試算を行う指標とするため、chainerのMNIST学習サ…

ubuntu16.04にROSのkinetic,kameをインストール

参考サイト 導入方法 catkinの設定 参考サイト 基本は公式サイト通りでOK bashにはオリジナルの便利コマンドも入れてみた。 どこかの本で読んだコマンドだから、オリジナルでもないけれど・・・。kinetic/Installation/Ubuntu - ROS Wiki 導入方法 # レポジ…

マルレク第三回「パーソナル・アシスタント・システムと 人工知能」に参加してきた。 興味深いトピックまとめ

興味深い言葉 ボイスアシスタント Bengioの意見 各社の人工知能API比較 AIと検索と広告 過去からの検索技術の動向 schema.orgの取り組み 自然言語のグラフ化 まとめ マルレク第三回「パーソナル・アシスタント・システムと 人工知能」に参加してきた。 自然…