空飛ぶロボットのつくりかた

ロボットをつくるために必要な技術をまとめます。ロボットの未来についても考えたりします。

Machine Learning

機械学習のお勉強(単層ニューラルネットワーク)

人工ニューロン 神経細胞を2値処理を行う単純なゲートとして表現。 z = w0 * x0 + w1 * x1 + …. + wm * xm and phi(z)={ 1 (z>=0) or -1 (z<0) これは脳内の一つのニューロンの働き(発火するかしないか)を模倣している。 パーセプトロンの学習規則 重みを…

機械学習のお勉強(全体像)

教師あり学習 クラスラベルを予測するための分類 カテゴリデータをインスタンスに割り当てる 連続値を予測するための回帰 予測したい変数:結果変数 予測に使用される変数:説明変数 強化学習 エージェント:環境とのやりとりに基づいて性能を改善するシステ…

機械学習のお勉強(DeepPose, OpenPose)

やること pythonでのcaffe環境構築 OpenPoseを動かしてみる Caffe Install 設定(GPU) 【Caffe】はじめてCaffeをmakeするまでOn Ubuntu16.04 - 緑茶思考ブログ Ubuntu 14.04にCaffeをインストール(GPU編) - Qiita Installing Caffe on Ubuntu (CPU-ONLY) - Ch…

chainerで動かしたいものリスト

動かしながら理解を深めたい ひとつずつ動かしていく〜(TBD) サンプル集 Chainerのサンプルコードを集めてみた(メモ) - あおのたすのブログ 2D-CNN Chainerによる畳み込みニューラルネットワークの実装 - 人工知能に関する断創録 3D-CNN VoxcelChain 3…

クラスタリング(k-means)のお勉強

k-meansでクラスタリング(教師なし) import numpy as np from sklearn.cluster import KMeans # size 量的データ features = np.array([ [20, 95, 190], [52, 103, 103], [50, 70, 280], [65, 65, 210], [84, 84, 96], [20, 50, 140], [28, 49, 176], [40,…

Hough変換で直線、円検出をやってみる

import cv2 import numpy as np img = cv2.imread('dave.jpg') gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) edges = cv2.Canny(gray,50,150,apertureSize = 3) lines = cv2.HoughLines(edges,1,np.pi/180,200) for rho,theta in lines[0]: a = np.cos(thet…

マーカーを用いたカメラ位置姿勢推定(OpenCV+ArUco)

ArUcoのマーカー種類 SingleMarker Board ChessBoard Diamond Single マーカの一辺の長さを指定。 マーカとカメラ間の位置関係を求める。 Board マーカの一辺の長さとマーカ間の長さを指定。 ボードとカメラ間の位置関係を求める。 単一マーカより精度は良い…

物体追跡をやってみる(ピンクのボールを追いかける)

やりたいこと:ピンクボールの追跡 OpenCV-Python tutorial OpenCV-Pythonチュートリアル — OpenCV-Python Tutorials 1 documentation OpenCVでのHSVの扱い OpenCVでのHSV色空間lower,upperの取り扱い - Qiita ピンクの色相の検出 lightsalmon : 255,160,167…

機械学習のお勉強(ベイズ推定)

パラメトリックモデルの3つのステップ パラメータを含むモデル(数式)を設定する パラメータを評価する 最良の評価を与えるパラメータを決定する ここで、2.においてパラメータを評価する基準として大きく2つある * 1つは誤差を定義して誤差を最小にするパ…

機械学習のお勉強(特徴量)

TBD Haar-Like 物体の局所的な明暗差の組み合わせにより、画像を判別する LBP(Local Binary Pattern) 物体の局所的な輝度の分布の組み合わせにより、画像を判別する HOG(Histogram of Oriented Gradients) 物体の局所的な輝度の勾配方向の分布の組み合わ…

機械学習のお勉強(最小二乗法、最尤推定法、パーセプトロン)

最小二乗法 ex: 観測値と真値の二乗誤差を最小にするようにn次多項式を解く。 データセットがn以上あると解析的に平方根平均二乗誤差が0の多項式を導くことができる。 平方根平均二乗誤差:解いて求めた多項式から推定する値とデータセットとの値が平均的に…

keras2とchainerの使い方をCNNでくらべてみる

目的:keras2とchainerの使い方の違いを知る まとめ: keras2はmodelの最初の層以外の入力は記述しなくても良い。バックエンドがtheanoとtensorflowで入力の配列が異なる。 chainerはmodelの層追加時、入力と出力の数を記入。入力でNoneと記述すると自動的に…

kerasを動かしてみる~その2:CNN~

tensorflowをバックエンドで動かす .keras/keras.jsonを以下のように書き換え { "image_dim_ordering": "tf", "epsilon": 1e-07, "floatx": "float32", "backend": "tensorflow" } GPUで使う pip install tensorflow-gpu (TBD) CNNのサンプル GitHub - fchol…

機械学習のお勉強(ChainerCV)

ChainerCV↓ コード GitHub - chainer/chainercv: ChainerCV: a Library for Computer Vision in Deep Learning ドキュメント ChainerCV — ChainerCV 0.2.1 documentation Detection Models Faster R-CNN Single Shot Multibox Detector (SSD) Semantic Segme…

機械学習のお勉強(SVM,ニューラルネット、CNN、FCN,YOLO,SegNet etc ...)~参考まとめ~

SVM NN CNN AlexNet VGG FCN YOLO SSD SegNet 3D-CNN chainer sample Fine-tuning インデックスカラー 画像のセグメンテーション keras2とchainerが使いやすそう SVM SVM、ニューラルネットなどに共通する分類問題における考え方 - HELLO CYBERNETICS http:/…

RGBDデータセットのお勉強

参考:List of RGBD datasets INDOOR NYU Dataset v1 ☆ NYU Dataset v2 ☆ SUN 3D ☆ SUN RGB-D ☆ ViDRILO: The Visual and Depth Robot Indoor Localization with Objects information dataset ☆ SceneNN: A Scene Meshes Dataset with aNNotations ☆ Stanfor…

Deep learningの論文まとめサイト&キャッチアップ方法

論文まとめ aonotas.hateblo.jp 2016年のディープラーニング論文100選 - Qiita DeepLearning研究 2016年のまとめ - Qiita Deep Learningの理論的論文リスト - Obey Your MATHEMATICS. わかりやすいブログ Twitter社が発表した超解像ネットワークをchainerで…

Deep Learningの環境構築(Ubuntu14.04+GTX 950M+CUDA+cuDNN)

これから過酷な戦いが始まる… ノートパソコンにDeep Learningの環境をつくってみる. PC環境 目標 Nvidia Driver 悪名高き?ドライバnouveau Nvidia Driverのインストール nvidia-smiについて CUDA CUDA対応GPU CUDAのドライバ CUDAのインストール方法 CUDA環…

Numpy / pandasのお勉強

numpy 配列も@で行列のように計算できる。python3.5以降。 In [7]: import numpy as np In [8]: A = np.array([[1,2],[3,4]]) In [9]: B = np.array([[5,6],[7,8]]) In [10]: C = A @ B @ A.T In [11]: C Out[11]: array([[ 63, 145], [143, 329]]) 以下は同…

kerasを動かしてみる~その1~

tensorflowのインストール Kerasのインストール Kerasの実行 TJOさんの記事を参考にKerasを動かして見ました。感謝です。 参考: KerasをTensorFlowバックエンドで試してみた:「もっと多くの人に機械学習とDeep Learningを」という時代の幕開け - 六本木で…

Ubuntu14.04(CPU only)でSegNetを使ってみる

手順 caffe-segnetのダウンロード git clone https://github.com/alexgkendall/caffe-segnet.git 以下の手順でインストール Caffe | Installation: Ubuntu 以下の手順でMakeコンパイル CPU only の設定に変更 Caffe | Installation For CPU-only Caffe, unco…

Deep Learningのお勉強その1

参考図書 Deep Learning パーセプトロン 簡単な実装 重みとバイアスの導入 多層パーセプトロン ニューラルネットワーク 活性化関数 出力層の活性化関数 3層のニューラルネットワーク バッチ処理 学習 損失関数 二乗和誤差 交差エントロピー誤差 ミニバッチ学…

データセットの作り方参考まとめ

chainerのデータセットの作り方 LinearやCNN - Qiita 機械学習で用いる顔画像データセットの一作り方(1:WebAPIサービスを用いて候補画像取得) - Qiita 【pylearn2】自分のデータセットを使ってカンタンにGRBMしよう - CORDEA blog

機械学習の参考まとめ

機械学習 機械学習を知識ゼロから学ぶpdf - NAVER まとめ 機械学習はじめの一歩に役立つ記事のまとめ - Qiita Deep Learning Deep Learningによる一般物体検出アルゴリズムの紹介 - ABEJA Tech Blog CNN 定番のConvolutional Neural Networkをゼロから理解す…

YOLOの参考資料まとめ(Deep Learning Tool)

Deep Learningでの認識に興味がありやす 時間があるときに論文よみたい 参考: pjreddie.com YOLOv2/YOLOv2.md at master · leetenki/YOLOv2 · GitHub GitHub - leetenki/YOLOv2: YOLOv2のchainerの再現実装です(darknetのchainerローダと、完全なchainer上…