タグ

OpenCVに関するakakitのブックマーク (43)

  • OpenCV 4.0のQRコード検出、G-APIを試す – Rest Term

    先日、OpenCV 4.0が正式リリースされました。リリースノートの内容を載せます。 OpenCV 4.0 * OpenCV is now C++11 library and requires C++11-compliant compiler. Minimum required CMake version has been raised to 3.5.1. * A lot of C API from OpenCV 1.x has been removed. * Persistence (storing and loading structured data to/from XML, YAML or JSON) in the core module has been completely reimplemented in C++ and lost the C API as well. * N

    OpenCV 4.0のQRコード検出、G-APIを試す – Rest Term
    akakit
    akakit 2019/06/06
    “ QR code detector and decoder ”
  • OpenCVによるコンピュータビジョン・機械学習入門

    運動復元、物体追跡、画像レジストレーション、三次元再構成、機械学習をOpenCVで学ぼう。汎用性の高いアルゴリズムのプログラム例を多数掲載した。OpenCV3系に対応。多彩な内容で、欲張りな一冊! Chapter0 コンピュータビジョンとは? Chapter1 特徴検出 Chapter2 特徴量記述 Chapter3 運動復元 Chapter4 物体追跡 Chapter5 画像レジストレーション Chapter6 カメラモデル Chapter7 エピポーラ幾何 Chapter8 カメラキャリブレーション Chapter9 3次元再構成 Chapter10 機械学習とは? Chapter11 人工的なデータの生成 Chapter12 主成分分析 Chapter13 クラスタリング Chapter14 k最近傍法 Chapter15 ベイズ識別 Chapter16 サポートベクトルマシン Ch

    OpenCVによるコンピュータビジョン・機械学習入門
  • 【CEDEC 2016 フォローアップ】ゲーム開発におけるデバッグ作業の自動化

    みなさん、こんにちは。Cygamesエンジニアの折田です。 いきなりで恐縮ですが・・・みなさんは、テストの自動化にどのように取り組んでいらっしゃいますか? テストの自動化 所属するプロジェクトによって、テストの自動化に対する運用方針も様々だと思います。 テストファーストで積極的に取り組んでいる方もいるでしょうし、開発ワークフローに組み込まれていて、仕方なく取り組んでいる方もいるでしょう。ちゃんとしたいのはやまやまだけど、そこまで手が回らないという方がほとんどかも知れません。「単体テスト」や「結合テスト」が自動化されているプロジェクトであっても、テストの最終工程にあたる「受け入れテスト」だけは自動化の対象から外されているケースは意外と多いのではないでしょうか? 膨大なコストを払ってまで「継続的インテーグレーション」や「継続的デリバリー」を実践しているのに、その最終工程の自動化は叶わず、人間の

    【CEDEC 2016 フォローアップ】ゲーム開発におけるデバッグ作業の自動化
  • OpenCVのissueを発行する前に

  • ラズパイにつないだカメラ60台でマトリックス風の特撮を実現、視線のズレをOpenCVで補正

    映画「マトリックス」でよく使われた特撮技法を実現するシステムです。スローモーションで動く被写体を、カメラが移動しながら撮影しているように見える動画が撮れます。USBカメラ60個を直径3.6mの円形に配置し、30台のRaspberry Pi 1 Model B+で制御しつつ撮影します(図1)。 60個のカメラは、すべて同一点に視点を合わせておかないと、静止画を並べて動画にした場合にブレが生じて非常に見づらくなります。このためカメラ設置時にマーカーを置いて、マーカーが画面の中央になるようにカメラの視線を手動で合わせます。このとき画面中央とマーカーのずれを求めて、グラフィックス表示するソフトを作りました。これでチェックしながら効率良くカメラの視線を合わせられます。それでも残る微妙なズレをデータとして記録し、動画作成時に補正する機能があります。これらの機能をPythonと画像処理ライブラリのOpe

    ラズパイにつないだカメラ60台でマトリックス風の特撮を実現、視線のズレをOpenCVで補正
  • OpenCVを学ぶのにおすすめな本とWebサイト(2014年版) - miso-engine

    先日しゃの君が [緩募]OpenCV理解度0の人におすすめのとっかかりとなるなど— しゃの (@syano) 2014年5月15日 と言ってたので、Twitterで答えてみました。この記事はそれのまとめです。 @syano 画像処理の入門書で良いのはこれ。フルカラーで分かりやすく分野を見られる http://t.co/gRiymstmq1— 川鍋徹 (@kawanabetoru) 2014年5月15日 @syano OpenCV自体のとしてはこれがおすすめ。分厚いけどこれですべて網羅出来る。ただ、ちょっと古いと思う。 http://t.co/2XyrVaBssH— 川鍋徹 (@kawanabetoru) 2014年5月15日 @syano 最新情報が知りたいなら公式サイトのリファレンスだが、日語のopencv.jpで大体事足りるので、なんか買う前にざっと見るのがおすすめ。クックブック

    OpenCVを学ぶのにおすすめな本とWebサイト(2014年版) - miso-engine
  • [opencv] cv::MatとIplImageの相互変換 |たかみんつ

    OpenCVの画像データである、IplImage構造体と、2.0以降で利用できるcv::Matクラスの双方向の変換方法を説明します。 OpenCV2.0以降では、cv::Matが利用でき、初期化や後始末、さまざまな画像処理に関しても、扱いやすくなっているのですが、 既にある関数を利用したい場合には、一旦IplImageに変換しなくてはなりませんし、逆にIplImageをcv::Matへ変換したい場合もあります。 これらの変換ルーチンはcv::Matクラスで定義されていて、実際には非常に簡単に変換できます。 しかし、コーディング中は、何故か難しく考えすぎて、戸惑うことが多々ありますので、ここにまとめておきます。 opencv.jpの説明では、 変換後のインスタンスに「データはコピーされません」という記述がなされています。 これは、変換後のインスタンスは、元データを参照しているだけで、データ部

  • OpenCVを使って写真をアニメ塗りっぽくする | Workpiles

    OpenCVを使って画像処理の勉強がてらいろいろ遊んでいる今日このごろ。 ふと写真をアニメっぽく出来ないかなと思って試してみました。カメラアプリとかだと漫画調とか絵画調にする機能はあるけど、アニメ調ってのはないなと思って。 さて、Wikipediaによるとアニメ塗りとは、 ・輪郭や境界線をはっきり線で書く ・色や影のグラデーションを単純化させ段階的に表現する だそうです。 こんな感じを目指したいと思います。 引用元:のんのんびより りぴーと 減色する 先ずは色の単純化を試してみました。 RGB画像の色をざっくり減らしてみる 取っ掛かりとして写真をRGB画像(24ビット)として読み込んで、各ピクセルのRGB成分をマスクをかけて減らすとどうなるかやってみました。 R成分 = R成分[元画像] & マスク(0xfe〜0x80); G成分 = G成分[元画像] & マスク(0xfe〜0x80);

    OpenCVを使って写真をアニメ塗りっぽくする | Workpiles
  • JavaScriptで画像のクラスタリングによるドット絵風加工 – Rest Term

    pixel clustering using k-means++ 前回のJavaScriptでPoisson Image Editingによる滑らかな画像合成に引き続き、HTML5 Canvasを使ったJavaScriptによる画像処理の一例を紹介します。 今回は画像の画素値に対するクラスタリング(分類)を画像加工用途に応用します。クラスタリングには各画素のRGB値を特徴ベクトル(次元数3)としてk-means法と呼ばれる手法を使って行います(実装上はk-means法の初期値選択アルゴリズムを改良したk-means++法を利用)。以下のサイトでOpenCVを利用した実装例が紹介されています。 k-meansクラスタリングによる画像分割,減色 – opencv.jp 上記サイト内でも言及されているように、k-means法による画像の領域分割や減色処理はあまり良い結果が得られないことが知られて

    JavaScriptで画像のクラスタリングによるドット絵風加工 – Rest Term
  • 画像処理 — OpenCV-CookBook

    画像を単色で塗りつぶす¶ 画像を単色で塗りつぶす方法を示します. また,この例には示しませんが, 画像中の部分矩形を塗りつぶす場合には、ROIまたは cv::rectangle を利用します. 矩形を描く などを参考にしてください. #include <iostream> #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> int main(int argc, char *argv[]) { // 初期化時に塗りつぶす cv::Mat red_img(cv::Size(640, 480), CV_8UC3, cv::Scalar(0,0,255)); cv::Mat white_img(cv::Size(640, 480), CV_8UC3, cv::Scalar::all(255)); cv::M

    画像処理 — OpenCV-CookBook
  • OpenCVで任意の短形を切り取った画像を返す関数 - Qiita

    画像のファイルパスと切り取る短形を受け取ると、切り取った画像を返す関数。 切り取った画像の解放は後でやらないといけない。 // 画像を指定範囲で切り取って返す IplImage *cutImage(char* name,CvRect cutRect){ IplImage *dst_img,*cutImage; dst_img = cvLoadImage (name, CV_LOAD_IMAGE_COLOR); // 注目範囲を設定 cvSetImageROI (dst_img, cutRect); cutImage = cvCreateImage(cvGetSize(dst_img),dst_img->depth,dst_img->nChannels); // 注目した領域をコピーして保持 cvCopy(dst_img, cutImage, NULL); cvResetImageROI(d

    OpenCVで任意の短形を切り取った画像を返す関数 - Qiita
  • 10万円台の産業用ロボット——水平関節型小型ロボットアーム「Dobot M1」|fabcross

    デスクトップにも置ける小型ロボットアーム「Dobot M1」がKickstarterにてクラウドファンディング中だ。 開発元は昨年11月に、Arduinoでコントロールするロボットアーム「Dobot」で、Kickstarterにてクラウドファンディングを実施、最終的に60万ドル(約6800万円)以上を集めることに成功し、話題となった。 Dobot M1は垂直関節型を採用したDobotと異なり、より産業用ロボットとしての性能を高めるため、SCARA型と呼ばれる水平多関節ロボットとした。Dobotと比較すると、ペイロード1.5kg、位置精度0.02mm、アーム角速度200度/秒と、ホビーの域を超え、メイカー向けに小規模ロット生産にも耐えうるスペックとなっている。

    10万円台の産業用ロボット——水平関節型小型ロボットアーム「Dobot M1」|fabcross
  • OpenCVのカレンダー | Advent Calendar 2016 - Qiita

    コンピュータビジョンのライブラリOpenCVのアドベントカレンダーです。 OpenCVの知られざる機能(マイナーとも言う)、こんなプラットフォームでOpenCVを動かした、分かりづらいバグに遭遇した、こんな便利な機能があるなどの情報を中心に書いてます。 http://qiita.com/advent-calendar/2015/opencv (昨年のAdvent Calendar) あと、今年は昨年と違い執筆希望者多数で、以下の記事もAdvent Calendar として執筆頂いています 「その2」を立ち上げるか悩んだのですが、今からだと過疎りそうなので、重複日を許すアドベントカレンダーということでよろしくお願いします。 9日目 その2 cv::Matにおけるclone()とcopyTo()の挙動の違い by 13Mzawa2 23日目 その2 Vivado HLSのビデオ プロセッシング

    OpenCVのカレンダー | Advent Calendar 2016 - Qiita
  • 機械の目が見たセカイ -コンピュータビジョンがつくるミライ(27) 動く人・物を追跡する(1) - OpenCVによるトラッキング

    連載の第13回から16回にわたって機械学習による顔・人・物体の検出、識別についてご紹介しました。1枚の画像から顔・人・物体を検出するだけでなく、動画像の連続するフレームから検出する場合は、トラッキング処理が必要となります。トラッキング処理を用いた場合、一度物体を見つけた後はその周辺のみを探索すれば良いので、誤検出や未検出を抑制することができます。さらに、フレーム間の物体の対応関係から動きの軌跡を求めることができます(動画1)。 オープンソースライブラリ OpenCVによるトラッキング OpenCV 3.0以降では、エクストラモジュール(opnecv_contrib)を追加することで、さまざまな機能を使うことができます。そのエクストラモジュールにはトラッキングが含まれているので、OpenCVを使って人や物体の追跡をすごく簡単に実装できます。ただ、エクストラモジュールを使用するためには、cm

    機械の目が見たセカイ -コンピュータビジョンがつくるミライ(27) 動く人・物を追跡する(1) - OpenCVによるトラッキング
  • OpenCVをMIPSで走らせてみた - Qiita

    はじめに これは、OpenCV Advent Calendar 2016 2日目の記事です。関連記事は目次にまとめられています。 世界の果てまでitteQ OpenCV 昔から考えてたことに、一体どんな変態的なプラットフォームでOpenCVを動かすことができるのだろう?という興味がありました。 もともとARMデバイスでは数多くの成功例が報告されていましたが、この度MIPSのボード Imagination Creator CI20 を手に入れたので、その上でOpenCVをコンパイル、走らせてみました CI20 ちなみに、OpenCVを走らせる事自体は色んな方が試されているので、そういう意味では二番煎じなのですが、せっかくなのでAdvent Calendar に投稿してみます クロスコンパイルとネイティブコンパイルについて 題に入る前に、クロスコンパイルとネイティブ(?)コンパイルについて触

    OpenCVをMIPSで走らせてみた - Qiita
  • IkaLogの裏側~「スプラトゥーン」のリアルタイム画像解析はどのように行われているのか 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    IkaLogの裏側~「スプラトゥーン」のリアルタイム画像解析はどのように行われているのか 記事一覧 | gihyo.jp
  • 3次元コンピュータビジョン計算ハンドブック|森北出版株式会社

    OpenCVやWeb上のプログラムなど,コンピュータビジョンを行ううえでのツールは充実していますが,これらを改良したり,自分の問題のために書き換えるのは,一筋縄ではいきません. 書では,コンピュータビジョン,とくに画像からの3次元解析の代表的な手法について,それらの計算手順(アルゴリズム)を詳細に解説することで,こうした問題を解決するヒントを提供します. 〈書の特徴〉 ・「計算手順」→「解説」という順序で解説 →理論の詳細を追わなくても学べる. ・アルゴリズムの適用例を示し,それぞれの精度と処理速度を評価 →高精度・高速な処理を行うために,アルゴリズムの何をどのように工夫すればよいかがわかる. ・この分野の第一人者である著者らが,各手法について,歴史的概観を交えて参考文献を紹介 →今後の学習の指針,分野の概観が得られる. ▼実装を容易にするために,代表的な手順のサンプルコードと,行列・

    3次元コンピュータビジョン計算ハンドブック|森北出版株式会社
  • opencv.jp - OpenCV: ヒストグラム(Histograms)サンプルコード -

    作成者: 怡土順一, 最終変更者: 怡土順一, 最終変更リビジョン: 378, 最終変更日時: 2008-07-04 04:13:47 +0900 (金, 04 7月 2008) ■ ヒストグラム ヒストグラムとは,値を持つ集合を任意の区間(OpenCVのリファレンスでは 「ビン」という用語が用いられることがある)に区切り,その区間毎のデータ の割合を棒グラフで表したものである. 画像処理の分野では,ある輝度値(あるいは,そのチャンネルにおける値)を 持つピクセルが,どのように分布しているかを示すものとして用いられること が多い.最近では,デジタルカメラなどにも,現在の画像に対するヒストグラ ムを表示する機能をもつものがある. #include <cv.h> #include <highgui.h> int main (int argc, char **argv) { int i, j,

  • Visual C++ の勉強部屋

    理工系、特に電気情報系、の学生と技術者を対象としたVisual C++の解説を行います。ただし、初めてプログラムを学ぶ全くの初心者向けではありません。作成時期が異なるため、Visual C++のVersionが異なっていますが、質的に変わりはありません。 資料の一部のJava版が(株)翔泳社のウエブサイトCodeZineにありますので、こちらもご利用ください(Java版とある場所をクリックして下さい)。 (株)マイナビ出版より、「C#画像処理・数値プログラミング - Visual C# 2017対応 - (プレミアムブックス) 」が新たに発売されました。これは、2014年に同社より発売された「Visual C# 2013画像処理・数値プログラミング」を、最新のVisual Studio 2017で確認して書き直したものです。こので紹介しているものは、下記「マイナビ」欄に「C#」で記し

  • iOS + swift + openCV 3.1 build error: core.hpp header must be compiled as C++ - Stack Overflow