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

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

OpenCV

2値化画像処理のお勉強(8)

参考:二値化処理 | JProgramer やりたいこと 2値画像処理について学ぶ 教科書 CG-ARTS | 書籍・教材 二値化 参考:画像処理(二値化) 2値化 2値化は文字をファックスで送る場合やOCRによって文字認識を行う場合などに必要となる処理である。 以下に2値化…

幾何学的変換のお勉強(8)

参考:Okutomi lab やりたいこと 画像の位置や形を変化させる画像の幾何学的変換について学ぶ 教科書 CG-ARTS | 書籍・教材 線形変換 [ [x`] , [y`] ] = [ [a, b] , [c, d] ] * [ [x] , [y] ] で表すことができる変換を線形変換という 拡大・縮小 [ [x`] , […

画像の復元と生成(6)

参考:1307(月)ピンボケ写真修正。アンシャープマスク他 - 四級猫 . . やりたいこと 画像復元の原理について学ぶ 教科書 CG-ARTS | 書籍・教材 ぼけ・ぶれ画像の復元 画像の劣化モデル 点拡がり関数:点広がり関数と線広がり関数とは? | ギモンらど!! …

周波数領域によるフィルタリングのお勉強(5)

参考:周波数領域における画像処理 やりたいこと 周波数領域によるフィルタリングについて学ぶ 教科書 CG-ARTS | 書籍・教材 画像のフーリエ変換 画像フィルタリング、復元・再構成、テクスチャ解析、符号化などに用いられる 2次元フーリエ変換 参考: 【画…

領域に基づく濃淡変換(4)

参考:デジタル・フロンティア-Digital Frontier | DF TALK | 空間フィルタリングを別の表色系で! やりたいこと 空間フィルタリングについて学ぶ 教科書 [CG-ARTS | 書籍・教材 参考になりまくるブログ 2.6. Numpy と Scipy を利用した画像の操作と処理 — S…

画素ごとの濃淡変換のお勉強(3)

やりたいこと 画素ごとの変換について学ぶ 教科書 CG-ARTS | 書籍・教材 階調変換関数・トーンカーブ 参考; 思い通りに修正しよう!Photoshopの使い方〝詳細〟解説 ② 全ての基本「トーンカーブ」の見方とつくり方【トーンカーブ前編】 – Adobe Creative Sta…

画像の性質と色空間のお勉強(2)

やりたいこと 画像の性質と色空間について学ぶ 教科書 CG-ARTS | 書籍・教材 ヒストグラム 参考: デジタル一眼レフカメラ入門初心者講座/ヒストグラムを理解しよう カラー画像のヒストグラム ### 統計量 最大値・最小値 平均値: 全ピクセルの画素値の平…

HOG+SVMで物体認識(OpenCV3)

HOG+SVM HOG : 局所領域 (セル) の輝度の勾配方向をヒストグラム化 SVM : サポートベクターマシン(SVM) 2class の分類を行う sample1とsample2ディレクトリに分類したい画像を同じ枚数用意 予測したい画像を用意(test.png) 実行方法 python hog_svm_2cla…

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…

分類のお勉強

sklearnを用いた2クラス分類 画像データの2クラス分類 sklearnを用いた2クラス分類 #!/usr/bin/env python # coding: utf-8 import numpy as np from sklearn import datasets from sklearn import cross_validation from sklearn import metrics # DataSet…

画像読み込み、表示のお勉強

例えばros kinect のdepth imageは Data published on /camera/depth/image_raw is the depth in millimeters as a 16 bit unsigned integer. のようにパブされている。 [PARTLY UNSOLVED] Raw Kinect Depth Data - ROS Answers: Open Source Q&A Forum グレ…

エッジ検出のお勉強(OpenCV+python)

Sobel Edge Detection Laplacian Edge Detection Canny Edge Detection Sobel Edge Detection import cv2 image = cv2.imread('iron_man.png') gray_image = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY) gray_sobel_x = cv2.Sobel(gray_image,cv2.CV_32F,1,0) c…

Visual SLAM参考資料まとめ

単眼カメラでの位置計測や自己位置推定に興味がありやす Monocular Visual Odometry Direct Sparse Odometry LSD-SLAM ORB-SLAM PTAM Visual SLAM Monocular Visual Odometryがおもしろそう http://yokoya.naist.jp/paper/datas/1407/SSII%E3%83%81%E3%83%A5…

ロボットの目をつくろう(ip cameraをつかう)

aiballとopencvで動画ストリーミング 小型のwifiカメラであるaiballを使ってみる 方法 aiballをpcとwifiで接続 以下のスクリプトを実行 # -*- coding: utf-8 -*- import cv2 cap = cv2.VideoCapture("http://192.168.2.1/?action=stream.mjpeg") #ここが大事…