2015年11月12日木曜日

OpenCV Tutorial(1)〜特定色のトラッキング

このエントリーをはてなブックマークに追加
OpenCVのサイトにオンラインドキュメントでチュートリアルがあったので、ざっと眺めてためそうと思う。使う言語はCではなくpythonにしてみる。(慣れてるし)

Image Processing in OpenCVから。

Changing Colorspaces

import cv2
import numpy as np

cap = cv2.VideoCapture(0)

while(1):

    # Take each frame
    _, frame = cap.read()

    # Convert BGR to HSV
    hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)

    # define range of blue color in HSV
    lower_blue = np.array([110,50,50])
    upper_blue = np.array([130,255,255])

    # Threshold the HSV image to get only blue colors
    mask = cv2.inRange(hsv, lower_blue, upper_blue)

    # Bitwise-AND mask and original image
    res = cv2.bitwise_and(frame,frame, mask= mask)

    cv2.imshow('frame',frame)
    cv2.imshow('mask',mask)
    cv2.imshow('res',res)
    k = cv2.waitKey(5) & 0xFF
    if k == 27:
        break

cv2.destroyAllWindows()

青色でマスクされた部分が動画でトラッキングされながらグレースケールと青のみでマスクされて表示された。


今日の作業

Bloggerのデザイン微修正とOpenCVのチュートリアル見つけて1つのみ。残念。あと、ソースにコメントを付けて補足したい。

2015年11月11日水曜日

画像の特徴点を抽出する

このエントリーをはてなブックマークに追加
せっかく入れたOpenCVなので何かやってみたい。

といってもパッと難しいことはできないので、よくある画像の特徴点抽出をやってみようかと思った。
import numpy as np
import cv2
from matplotlib import pyplot as plt

img = cv2.imread('/usr/local/src/opencv-3.0.0/samples/data/lena.jpg',0)

# Initiate STAR detector
orb = cv2.ORB_create()

# find the keypoints with ORB
kp = orb.detect(img,None)

# compute the descriptors with ORB
kp, des = orb.compute(img, kp)

# draw only keypoints location,not size and orientation
img2 = cv2.drawKeypoints(img,kp, None,color=(0,255,0))
plt.imshow(img2),plt.show()

出来た。

今日の作業

OpenCVのインストールが手強すぎて、あまり他のことに時間が割けなかった。とはいえ、OpenCV入れたので何ができるかの基本は押さえておきたい。明日は少し進展できたらいいな。

gcc: エラー: /usr/lib/rpm/redhat/redhat-hardened-cc1: そのようなファイルやディレクトリはありません

このエントリーをはてなブックマークに追加
gcc: エラー: /usr/lib/rpm/redhat/redhat-hardened-cc1: そのようなファイルやディレクトリはありません

と出た時はrpm-buildパッケージが足りないので、インストールしないといけない。
#dnf -y install rpm-build
依存性が解決されました。
================================================================================
 パッケージ                   アーキテクチャ
                                       バージョン               リポジトリ
                                                                           容量
================================================================================
インストール中:
 dwz                          x86_64   0.12-1.fc23              fedora    106 k
 ghc-srpm-macros              noarch   1.4.2-2.fc23             fedora    8.2 k
 gnat-srpm-macros             noarch   2-1.fc23                 fedora    8.4 k
 go-srpm-macros               noarch   2-3.fc23                 fedora    8.0 k
 ocaml-srpm-macros            noarch   2-3.fc23                 fedora    8.1 k
 perl-generators              noarch   1.06-1.fc23              updates    15 k
 perl-srpm-macros             noarch   1-17.fc23                fedora    9.7 k
 redhat-rpm-config            noarch   36-1.fc23                fedora     59 k
 rpm-build                    x86_64   4.13.0-0.rc1.6.fc23      updates   135 k
アップグレード中:
 rpm                          x86_64   4.13.0-0.rc1.6.fc23      updates   509 k
 rpm-build-libs               x86_64   4.13.0-0.rc1.6.fc23      updates   115 k
 rpm-libs                     x86_64   4.13.0-0.rc1.6.fc23      updates   293 k
 rpm-plugin-selinux           x86_64   4.13.0-0.rc1.6.fc23      updates    50 k
 rpm-plugin-systemd-inhibit   x86_64   4.13.0-0.rc1.6.fc23      updates    50 k
 rpm-python                   x86_64   4.13.0-0.rc1.6.fc23      updates    99 k
 rpm-python3                  x86_64   4.13.0-0.rc1.6.fc23      updates   100 k

トランザクションの要約
================================================================================
インストール    9 Packages
アップグレード  7 Packages

総ダウンロード容量: 1.5 M


(2016/1/1:追記)
redhat-rpm-configだけあればいけるみたい。