全く同じ画像だけではなく、より幅広く'似てそう'な画像を探します。 OpenCVのインストール OpenCVのインストールに関するページがネット上に多数あることから、OpenCVのインストールの難しさ(というより、やっかいさ?)が伺えますが、例に違わず僕もOpenCVのインストールに手間取ってしましました。 最終的には、 ・brewでインストールしたnumpy, opencv3をアンインストールした上で、 ・pip3 install opencv-python でopencvがpyhtonで使えるようになりました、のでご参考までに。 画像類似度計算 ヒストグラムの類似度により、画像の類似度を計算します。 ヒストグラムとは画像の明度の分布のことです。(ヒストグラム - CyberLibrarian) OpenCVのcalcHist()関数で画像のヒストグラムを計算できます。 またヒストグラム
はじめに こちらで顔の検出と抽出を行いましたが、あまり何も考えることなくコピペで実現できたのと、 今度は顔以外の物体の検出をやってみたくなったので、色々知識がないながらも見よう見まねで作ってみました。 TensorFlowを使ってDir en greyの顔分類器を作ってみた - ④顔抽出編 参考 opencv チュートリアル チャレンジ9 OpenCVにおける輪郭(領域) 環境 こちらをご覧ください。 TensorFlowを使ってDir en greyの顔分類器を作ってみた - ②環境構築編 使用する画像 あぽーです。 結果 以下の3つが検出されます。 以下の3つの矩形画像が出力されます。 ソースコード #!/usr/local/bin/python #! -*- coding: utf-8 -*- import cv2 import numpy as np # 指定した画像(path)の
紙のアンケート調査をした場合などにデータ入力をできるだけ効率化したかったので,OMR(Optical Mark Reader)を探していたのですが,なかなか自分の求めていたものがなかったので簡便なものを自分で作ることにしました。もっとスマートなやり方もあるでしょうが,ひとまずそれなりに動作するものができましたので記しておきます。 画像の認識処理にはOpenCV,数値処理にNumPyを使用しています。なお,MacでHomebrewを使ってOpenCV 3をPython 3から使用する方法についてはやや注意が必要です。brew installする際に,--with-python3オプションをつけないとPython 3からは使用できません。また,keg onlyのパッケージなので,Python 2の場合も3の場合も,自分でライブラリのパスを設定する必要があります。ネットで検索すると手順を紹介して
OpenCVで特徴量マッチング 特徴量マッチングとは、異なる画像でそれぞれ抽出した特徴量の対応付けのことです。 パノラマ画像の作成 物体検知 動体追跡 で登場する技術です。 OpenCVには、以下のライブラリが用意されています。 特徴量抽出 特徴量マッチング マッチング結果の表示 今回は、OpenCV 3 + Python 3 を使って、下記のような、回転、ズームした画像の特徴量マッチングをしてみます。 マッチング結果を描画 OpenCVとは OpenCV(Open Source Computer Vision Library)はBSDライセンスの映像/画像処理ライブラリ集です。画像のフィルタ処理、テンプレートマッチング、物体認識、映像解析、機械学習などのアルゴリズムが多数用意されています。 ■ OpenCVを使った動体追跡の例 (OpenCV Google Summer of Code
はじめに 今回は、OpenCV3とPython3を使ってニューラルネットワークの学習をしてみます。 画像処理とニューラルネットワークを組み合わせて使うケースがOpenCVだけで完結するので、ちょっとした検証に便利です。またOpenCVのPythonバインディングは、実体はC++で、PythonはC++のメソッドを呼び出すラッパーにすぎないので、学習はそこそこ高速に動作します。 ■ 実行環境 ・Python: 3.5.2 ・OpenCV: 3.1 ■ インストールと簡単な使い方はこちら OpenCV 3(core + contrib)をPython 3の環境にインストール&OpenCV 2とOpenCV 3の違い&簡単な動作チェック プログラム 最低限のプログラムです。 入力層:9 隠れ層:5 出力層:9 活性化関数:シグモイド 学習方法:バックプロパゲーション 学習データ: ・入力データ
OpenCV(オープンシーヴィ)は多機能なコンピュータビジョンライブラリで、動画や画像の処理に幅広く利用できるさまざまな機能が実装されています。 動画・画像処理を用いたアプリやサービスを開発するために、OpenCVを学びたいと思っている方は少なくないのではないでしょうか。 そこで今回は、OpenCVが学べる資料(記事・サイト・スライド)を10個ご紹介します。 OpenCVを基礎から解説している資料を中心に紹介していますので、OpenCVの学習にぜひご活用ください。 OpenCVがわかる記事・サイト 10分で学ぶOpenCV超入門 / MetaArt http://iphone.moo.jp/app/?p=1101 「画像を読み込み表示する」「画像のサイズを変更する」「画像をグレースケール化する」「画像を2値化する」、以上の4つのOpenCVを使ったプログラムについて学べる記事です。 各コー
環境づくり – 画像生成 – 画像読み込み – 画像の色の平均値出す – 画素をいじる – トリミング – リサイズ – 加算 – アフィン変換 – 反転 – グレースケール変換 – 描画関数のCircleを使う。 – 色の抽出 – カラーチェンネル入れ替え – alphaチャンネルの操作 ※途中 環境づくり はいさて。画像処理まともに勉強せんとな。。!そんならopenCVだろ!と思ったところで、 openCVをいじる環境を整えるのが一苦労なのです。普通の人は。 とりあえずpythonでいじろうと思います。 構成は pyenv-virtualenv anaconda opencv (Mac OSX Yosemite 10.10.5,Python 2.7.11,opencv 2.4.12) です。今時じゃないのが悔しいが。。 python2.7でopencv2で書かれてる情報が多いからとりあ
python + OpenCVで30行で顔認識 今更ながらpython + OpenCVで顔認識(正確には顔検出)をやってみたのでメモです。以下のように30行もあれば顔検出ができてしまいます。汎用性とか気にしなければ20行でもいけそうですね。 # -*- coding: utf-8 -*- import cv2 import sys cascade_path = "./haarcascade_frontalface_alt.xml" color = (255, 255, 255) # color of rectangle for face detection def face_detect(file): image = cv2.imread(file) image_gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) cascade = cv2.Ca
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
この記事を書くに至ったきっかけ Recruse Centerでは、私は、画像処理の勉強に時間を費やしていました。独学をし始めた頃は、何をするものなのか全く理解しておらず、ただ、文字や輪郭、模様などを識別するのに役立ち、これらで面白いことができる、ということくらいの知識しかありませんでした。 私の情報源は、主にWikipediaや書籍、公開されている大学の講義ノートです。これらの資料に慣れ親しんでくるにつれ、画像処理の世界における基礎を伝えられる「入門向け画像処理」を望むようになりました。 これが、この記事を書こうと思ったきっかけです。 前提条件 この記事は、Pythonが扱えるということを前提に書いています。その他の事前知識は必要ありませんが、NumPyや行列計算に慣れていると理解しやすいでしょう。 初めに 使用するのは、Python版OpenCV、Python 2.7 ^(1) 、iPy
画像処理は難しい。 Instagramのキレイなフィルタ、GoogleのPhoto Sphere、そうしたサービスを見て画像は面白そうだ!と心躍らせて開いた画像処理の本。そこに山と羅列される数式を前に石化せざるを得なかった俺たちが、耳にささやかれる「難しいことはOpenCVがやってくれるわ。そうでしょ?」という声に身をゆだねる以外に何ができただろう。 本稿は石化せざるを得なかったあの頃を克服し、OpenCVを使いながらも基礎的な理論を理解したいと願う方へ、その道筋(アイテム的には金の針)を示すものになればと思います。 扱う範囲としては、あらゆる処理の基礎となる「画像の特徴点検出」を対象とします(実践 コンピュータビジョンの2章に相当)。なお、本記事自体、初心者である私が理解しながら書いているため、上級画像処理冒険者の方は誤りなどあれば指摘していただければ幸いです。 画像の特徴点とは 人間が
Python初心者がScikit-imageの例題を自分用に使うためのヒント Python初心者がScikit-imageの例題を自分用に使うためのヒント2 複数のファイルを処理する に続いて、Scikit-imageの例題を、ほんの少しだけ改変して、遊んでみるために、Python初心者向けの内容を書いてみます。 引き続き Normalized Cut を例題にとりあげます。 [Python初心者がScikit-imageの例題を自分用に使うためのヒント2 複数のファイルを処理する]では、さまざまな画像に対して処理することができました。 ただ、今のままでは結果がファイルに保存できていないため不満を感じることかと思います。 そこで、ファイルに保存するためのヒントを示したいと思います。 OpenCV-Pythonによる画像保存 cv2.imwrite("out.png", img) OpenC
あけましておめでとうございます。 おうちハッカー@リッテルラボラトリーの石田です。 画像から何かを検出したい、ユーザーの動きに連動して何か作りたい、なんて思うことがあると思います。 そんなときに、どんな技術を使えばよいのか迷うと思うのですが、そんなときに検討すべきライブラリ、API、デバイスを紹介したいと思います。 画像処理といったらlennaさん オープンライブラリ系 こちらはソースが公開されている画像処理ライブラリで、自分で組み合わせて適切な処理を作成します。 ライブラリによって得手不得手があるので、単独というより、組み合わせて使うことが多いと思います。言語はC++, Pythonがメインになります。 OpenCV OpenCV | OpenCV 画像処理といったらこれ!という定番ライブラリです。 動かせるプラットフォームも、windows,mac,Linux,Android, iOS
「OpenCV-Python チュートリアル文書」 のサイトが立ち上がっています。 OpenCV-Python チュートリアル文書のページへようこそ! まとまった訳を読むためには、上記のサイトをご利用ください。 以下の訳は、訳として不十分であり、関連するpythonのライブラリとの比較をした部分に独自性がある程度の代物です。 OpenCV3.2のOpenCV-Python Tutorials が http://docs.opencv.org/3.2.0/d9/df8/tutorial_root.html で公開されています。 (最近はGoogle翻訳の精度も上がっているので、この記事を読むよりは、Google翻訳にかけてみれば十分かもしれません。) OpenCV3.1のOpenCV-Python Tutorials が http://docs.opencv.org/3.1.0/d6/d00
この記事は CAMPHOR- Advent Calendar 2015 の16日目の記事です. こんにちは.@asadamanです. 最近,OpenCV-Pythonで遊んでいるので,それについて書いてみようと思います. OpenCV-Pythonのチュートリアルをやっているだけでも十分楽しいのですが,それを使ってこんなのができたらいいなっていうのがあるとワクワクしてきますよね! ということで,「囲碁の勝敗判定をさせてみる」という目標を立ててみました. 囲碁は陣地取りのゲームで,勝敗はどちらの方が多く陣地を取れたかで決まります.陣地とは,自分の石(黒石か白石)で囲まれた碁盤の交点の数です. (分かりやすい説明は囲碁の基本:囲碁の勝負の付け方を参考にしていただればと思います.) さて,処理の流れとしてはざっくり分けて, 画像から碁盤の領域を切り出す (→ ダメ詰め,死石などの処理) → 交点
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く