はじめてFirebaseを学んだときは良さがまったくわかりませんでした。 それはいまいちメリットがわかりづらか […]
以前からやってみたかったRaspberry Piの物体認識を試してみました。今回はクラウドサービスを使わずに深層学習ライブラリと学習済みモデルを使ってみました。 環境 Raspberry Pi3 (RASPBIAN JESSIE WITH PIXEL 4.4 / Python 3.4.2) LOGICOOL ウェブカム HD画質 120万画素 C270 ミニロボットPC等用スピーカー小型かわいい白 7インチ(1024*600) IPS液晶パネル ディスプレイ 今までカメラモジュールを利用していたのですが、OpenCVでストリーミングをさせるためWebカメラを購入しました。ついでにちょっと可愛らしいロボット型のスピーカーも合わせて買ってみました。 ロボット型のスピーカーがWebカメラに映った物をしゃべってくれます(英語です)。 こんな感じ Deep Learning Object Recog
OpenCV完全体とは OpenCVのすべての機能を有効化するべく,様々な外部ライブラリを吸収してした変化した,OpenCVの最終段階のこと. cmakeにて練成される. 関東のとある勉強会中で発言されたネタに由来する. https://twitter.com/UnaNancyOwen/status/43956620241285120 OpenCVのライブラリに関連するライブラリ&コンパイルオプション一覧 この記事は,前提知識としてOpenCVをcmakeしたことがある人を想定しています.cmakeを使った環境構築に関する詳細はここを参照してください. 必要な外部ライブラリは実に多岐に渡ります.すべてを網羅しきっているわけではないですが主要なものを列挙します. 以下は,公式から配布されているOpenCVのインストーラでデフォルトで有効化されているもの一覧です. 普通のモジュール ドキュメン
OpenCV 画像処理の代表的なライブラリといえばOpenCVだと思います。C++やPythonなど複数の言語で使用することができるため、アプリケーションへ組み込む際に利用することも多いと思います。 OpenCVにはたくさんの関数が実装されていて非常に便利ですが、画像処理の範囲が広いため、網羅しきれていない機能が多々ありあます。私は特に画像特徴量を扱う機能が心もとないと感じています。 scikit-image scikit-imageはPythonの画像処理ライブラリです。このライブラリはSciPyというPythonの科学ライブラリから派生したものです。同じ経緯で作られたscikit-learnは機械学習ライブラリとして広く使われています。 scikit-imageはその出自から、特徴量や認識に関するアルゴリズムに強いという特徴があります。 Python版のOpenCVとscikit-im
という表記は、ファイルの内容を表しています。 また、このページで紹介した方法では、動画やカメラなどを扱うような、一部の機能が利用できません。講義の演習では利用しないので詳細については明記しませんが、関心のある方のためにヒントだけ書いておきます。OpenCV で動画を扱うためには ffmpeg 、(IEEE1394/Firewireの)カメラを利用するためには libdc1394 というライブラリがそれぞれ必要となります。これらを先にインストールしてから OpenCV をインストール(ビルド)してください。 演習室のPCへのインストール Source forge の OpenCV のページの「Download Now!」からソースをダウンロードする ダウンロードできたら、tar で解凍・展開する
はじめに 数理情報工学実験第二という演習で、Raspberry Piをつかって何かを作ることになりました。そこでAMATERASUという自動ノート取り装置を作ったので紹介します。 そもそもRaspberry Piって? Raspberry Pi3 Model B ボード&ケースセット (Element14版, Clear)-Physical Computing Lab 出版社/メーカー: TechShareメディア: エレクトロニクスこの商品を含むブログ (3件) を見る これです。安くて小型で色んなセンサーをつけて遊べるコンピュータです。今回はカメラモジュールを使いました。 自動ノート取り装置とは 自動ノート取りの目標は、講義を撮影した動画*1を処理することで、ノートの代わりとして使える画像を出力することです。具体的には次のgifのような画像を次々出力していくのを目標にしています。黒くな
OpenCVのオブジェクト検出器作成方法についての解説です。 学習データの作成 まず最初にオブジェクト検出器の学習に使う教師データを用意する必要があります。そのためにまずGUIでオブジェクトの位置を指定するGUIツールを作りました。 PythonのOpenCVを使います。 #!/usr/bin/env python #! -*- coding: utf-8 -*- import cv2 import numpy as np import sys drawing = False sx, sy = 0, 0 gx, gy = 0, 0 rectangles = [] ok = False def draw_circle(event,x,y,flags,param): global sx, sy, gx, gy, drawing if event == cv2.EVENT_LBUTTONDOWN
画像処理は難しい。 Instagramのキレイなフィルタ、GoogleのPhoto Sphere、そうしたサービスを見て画像は面白そうだ!と心躍らせて開いた画像処理の本。そこに山と羅列される数式を前に石化せざるを得なかった俺たちが、耳にささやかれる「難しいことはOpenCVがやってくれるわ。そうでしょ?」という声に身をゆだねる以外に何ができただろう。 本稿は石化せざるを得なかったあの頃を克服し、OpenCVを使いながらも基礎的な理論を理解したいと願う方へ、その道筋(アイテム的には金の針)を示すものになればと思います。 扱う範囲としては、あらゆる処理の基礎となる「画像の特徴点検出」を対象とします(実践 コンピュータビジョンの2章に相当)。なお、本記事自体、初心者である私が理解しながら書いているため、上級画像処理冒険者の方は誤りなどあれば指摘していただければ幸いです。 画像の特徴点とは 人間が
opencv_contrib レポジトリに dnn という名前のディレクトリがひそかに出来ており、中を覗いてみると cv::dnn モジュールにDeep Learning関連の実装が含まれていたので軽く試してみました。Google Summer of Code (GSoC) 2015で発表され、GitHubにて実装が公開されたという経緯のようです。 It would be cool if OpenCV could load and run deep networks trained with popular DNN packages like Caffe, Theano or Torch. – Ideas Page for OpenCV Google Summer of Code 2015 (GSoC 2015) * 2015/12/22 追記 12/21にOpenCV3.1がリリースされ
最近opencv_contribにディープラーニング(dnn)モジュールが追加されたようです. チュートリアルを見るとCaffeのモデルが使えるようなので, iOS frameworkをビルドしてGoogLeNetを使ってみました. ググると色々とframeworkをビルドする方法が出てくるのですが, OpeCV3.0.0と現在(2015/10/17)のopencv_contribではビルドが通りませんでした. なのでframeworkのビルド方法からまとめてみようと思います. dnnモジュールを含んだopencv_contrib frameworkのビルド まず, githubからopencv, opencv_contribをcloneしてopencvは3.0.0タグをチェックアウトします. opencv_contribはmasterで良いと思いますが自分は9818f481bd1556e
HTML5(Canvus)、Javascript向けの画像処理ライブラリについてまとめたので紹介します。 続きを読む
3日で作る高速特定物体認識システム (3) SURFの抽出(2009/10/30)のつづき。 画像からSIFTや SURFといった局所特徴量を抽出できるようになったのでここらでそれを応用してみます。特徴点のマッチングを取ることで2つの画像間で対応する場所を求められるようになります。下の例のような感じです。下の図で2つのキーポイント間にひいた直線は、両端のキーポイントの特徴ベクトルが似ている(距離が小さい)ことを表しています。 以下、プログラムです。 keypoint_matching.exe [画像1のファイル名] [画像2のファイル名]のように2つの画像ファイルを入力として与えると上のようにマッチング画像が表示されます。 #include <cv.h> #include <highgui.h> #include <iostream> #include <vector> #include
概要 ある画像を複数の画像とグレースケールのヒストグラムで比較する機能をPythonで作ってみた時のメモ 環境 Python 2.7.9 Pyenv anaconda-2.1.0 opencv 2.4.8 ( condaにてインストール ) 実装 import cv2 def matching(self): im = cv2.imread('/to/image/path/image.jpg', cv2.IMREAD_GRAYSCALE) # 比較するImageFile image_hist = cv2.calcHist([im], [0], None, [256], [0, 256]) target = self.compare_target_hist(image_hist) result = [] while True: try: result.append(target.next())
フリーの局所画像記述子であるORBによる特徴抽出 import cv2 import numpy as np from matplotlib import pyplot as plt img = cv2.imread('lena.jpg',0) # 検出器の初期化 orb = cv2.ORB() # 特徴量の検出と出力用の計算 kp, des = orb.detectAndCompute(img, None) # 特徴の描画 img2 = cv2.drawKeypoints(img,kp,color=(0,255,0), flags=0) plt.imshow(img2) plt.show() #検出器 cv2.SIFT() cv2.BRISK() cv2.ORB() cv2.SURF() #他にもFASTとMSERが使用可能 orb =cv2.ORB() kp = orb.detect(
軽量プログラミング言語が苦手なので敬遠していたが,世間ではPythonからOpenCVを呼ぶのが流行っているようなので,練習がてらOpenCVで使える特徴点抽出アルゴリズムをまとめてみる. OpenCV2.4.9とOpenCV3.0 alphaについてまとめる.3.0 betaはなぜか動かなかったのでいつか暇があれば調査. 環境 WindowsでOpenCV公式サイトのダウンロードページから2.4.9および3.0 alphaのビルド済みバイナリをダウンロードしてきて解凍したものを使う. PythonからのOpenCVの呼び出し方はこことかを参照. 特徴点抽出の使い方 OpenCVで実装されている特徴点抽出のアルゴリズムはいくつかあるが,FeatureDetectorという共通インターフェースを使うことでどのアルゴリズムでも同様の記述で使える.使い方は以下. # 画像読み込み img = c
テンプレートマッチングで画像から取り出すには無理がありそうなので、やはり、独自なオブジェクト検出器を作ってみないとだめか、と思い、 OpenCVで学ぶ画像認識:第4回 オブジェクト検出器の作成方法|gihyo.jp … 技術評論社 http://gihyo.jp/dev/feature/01/opencv/0004 を読んで、試しに、AdaBoost を使ってカスケードを作ろうと思ったのだが、いやあ、ちょっと時間が掛かりすぎる。 ■学習用の正解ファイルの作成 C:\OpenCV2.3\build\bin\opencv_createsamples.exe ^ -img images\koma01.png ^ -vec koma01.vec ^ -num 1000 ^ -bg NG.txt ^ -w 45 -h 45 ^ -show ■オブジェクトの学習 C:\OpenCV2.3\build\
こちら の記事を読んで、これは楽しそうだ、ということで習作として カメラをかざすとウォーリーを見つけてくれるアプリ を OpenCV で実装してみました。 OpenCV を iOS アプリに導入する方法は下記記事をご参照ください(バージョン 3.0.0 rc1 で試して更新してあります) OpenCV for iOSの使い方 テンプレートマッチング まずは参考記事と同様のテンプレートマッチング処理を iOS で実装してみました。 マッチング処理の実装はこんな感じ。cv::matchTemplate を利用します。 + (UIImage *)match :(UIImage *)srcImage templateImage:(UIImage *)templateImage { cv::Mat srcMat = [OpenCVHelper cvMatFromUIImage:srcImage];
2013年02月22日10:06 カテゴリPHPOpenCV Apple信者ならFlash使わずPHP拡張face_detectで顔認証するよね ! こんにちは、VOYAGE GROUPのエンジニア、ガイアです。今は、ECナビのスマホサイトの開発運用をしています。 僕はECナビのスマホサイトを8ヶ月利用して5万ポイント貯めました。 貯めたポイントをWebマネーに変えて、音楽でも買おうと思います。まあ、ステマはこのぐらいにして本題に入ります。(5万ポイントは本当です、信じてください) 現在、Webで配信されるコンテンツはテキストに始まり、画像、音声、映像ときて、今はインタラクションのあるコンテンツもごく当たり前に配信されてます。javascript、HTML5、Unityなど色々と技術はありますが、やはりWebとの親和性や、普及度などなど・・・結局、色々物議を醸し出していますが、Flashで
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く