Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
お久しぶりです。私事でなかなか執筆の時間がとれず、前回の掲載から長く時間が空いてしまい申し訳ありませんでした。皆さんから寄せられたコメントには非常に励まされました。 というわけで、今回はいよいよ最終回です。前回はオブジェクト検出器を使って顔を検出するところまで行いました。今回は、オリジナルオブジェクト検出器を作成してみます。 今回作成するプログラムのソースコードは、こちらから一括してダウンロードすることができます。 Data.zip 学習の流れと仕組み 学習の流れ 前回のおさらいになりますが、オブジェクト検出器は機械学習という方法を通して作成されます。つまり、コンピュータプログラムに検出したいオブジェクトの画像(正解画像)とそうでない画像(非正解画像)を与えることで、オブジェクトが含まれている画像の傾向というのをコンピュータに覚えさせていきます。 学習の流れを簡単にまとめると以下の通りです
コンピュータビジョンで物体検出や追跡を行う場合、当然のことながら学習データというのをある程度用意しなくてはいけません。具体例としてはOpenCVのHaarClassifierCascadeで物体検出するための検出器を訓練するとき、訓練画像をたくさん集めて、その対象となる物体がその画像のどこにあるのかを記述したテキストファイルを作らなくちゃいけません。 詳しくは、ここら辺を参考にしてください。 http://gihyo.jp/dev/feature/01/opencv/0004 また、作った物体検出器やトラッキング用プログラムが正しく位置を検出しているかを評価するために、あらかじめ正解データというのを作っておいてそれに対して評価をする必要があります。この正解データというのがやっぱり画像を集めて、それに対してその物体の位置というのをいちいち人間が手動で調べて、なんらかの外部ファイルとしてその座
機械学習を行うために、画像から特定の物体(領域)だけ切り出して認識したり学習データを作りたい、ということがよくあると思います。 本稿では非常に多くの機能を持つOpenCVの中から、そうした機械学習のために利用する機能にフォーカスしてその利用方法を紹介していきたいと思います。具体的には、下記のモジュールを中心に扱います。 CVPR 2015 Tutorials 基本的な切り出しの手順は以下のようになります。以下では、このプロセスに則り解説を行っていこうと思います。 前処理: 物体検出が行いやすいように、画像の前処理を行います 物体検出: 物体の検出を行い、画像から切り出します 輪郭検出: 画像上の領域(輪郭)を認識することで、物体を検出します 物体認識: OpenCVの学習済みモデルを利用して対象の物体を認識し、検出を行います 機械学習の準備: 切り出した画像を用い、予測や学習を行うための準
ねこと画像処理。 (みかん – 吉祥寺 きゃりこ) 前回の ねこと画像処理 part 2 – 猫検出 では画像内の猫の顔を検出する方法を紹介しましたが、今回はディープラーニングの技術を用いて猫の品種を識別したいと思います。 学習データ ねこと画像処理 part 1 – 素材集めでは、自分で撮影した写真を学習データとして使うと書いたのですが、都内の猫カフェ等で出会える猫に限ってしまうと品種の偏りが大きくなってしまうので、ここではしぶしぶ研究用のデータセットを使うことにします。。ただ、Shiba Inuがあるのに日本が誇るMike Nekoが含まれていないのでデータセットとしての品質は悪いと思います。 The Oxford-IIIT-Pet dataset オックスフォード大学が公開している動物画像のデータセットです。その内猫画像は2400枚、クラス数は12で1クラスにつき200枚あります。今
19日に行われた Kyoto.なんか #3 で発表・デモをさせていただいた内容まとめです。 はじめに: 検出器の重要性 アイドル顔識別 をずっとやっている中で、顔の識別・分類(Classification)はCNNを使って出来ているけれど まだ上手く出来ていない別のタスクがあって。 それが画像内からの顔領域の検出 (Detection, Localization)。 「画像内に写っている人物が誰であるか」を識別するためには、まずはその画像に写っている「顔」を検出する必要がある。 その検出された顔それぞれについて分類器にかけて「この顔は○○さん」「この顔は××さん」と分類していくことになるわけで。 分類器に与える入力画像を切り抜いて抽出するのにもまず顔領域を検出する必要があるし、その分類器を学習させるためのデータセットも、様々な画像から顔領域を検出して切り抜いてそれぞれに対してラベル付けする
生物の実験でシャーレに生えた大腸菌のコロニーの数を数えるという作業をしたのですが、こんなものは人間の仕事ではないので自動化したいと思いました。 OpenCVのインストール OpenCV 3.0で入った関数を使いたいので記事を書いた時点で最新版のOpenCV 3.1をビルドしてインストールします。 環境はUbuntu 15.10で、基本的にInstallation in Linux — OpenCV 2.4.13.0 documentationに従います。 sudo apt-get install build-essential sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev wge
OpenCVの公式ドキュメントに各フラグがどのよな処理をするか記載されているので,確認してください. cv2.threshold は二つの出力を返します.一つ目の出力 retval については後述します.二つ目の出力がしきい値処理された後の 二値画像 になります. コード : import cv2 import numpy as np from matplotlib import pyplot as plt img = cv2.imread('gradient.png',0) ret,thresh1 = cv2.threshold(img,127,255,cv2.THRESH_BINARY) ret,thresh2 = cv2.threshold(img,127,255,cv2.THRESH_BINARY_INV) ret,thresh3 = cv2.threshold(img,127,2
適応的閾値処理 (Adaptive Thresholding) を使うサンプルです。 始めからぶっちゃけますと cvAdaptiveThreshold を使え、という話になりますが、本記事はそれだけでは終わりません! OpenCvSharpでは、OpenCV標準では用意されていない適応的閾値処理を、こっそり組み込んでいます。今回、初めてそれを公にしておきます。 OpenCvSharpをつかう 記事一覧 背景 適応的閾値処理は、様々な応用がありますが、特に文書画像処理においては必須の処理です。 例えば以下のような画像(左)を二値化したいとします。このとき、みなさんご存じ 大津の手法 では、(右)のようになってしまいます。 カメラで撮影した場合や古い文書の画像では特に、このような影やシミ等があるのが普通で、明るい部分でうまくいく閾値では高すぎて影部分では全部真っ黒になります。 もし仮に影がもっ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く