サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
アメリカ大統領選
miyabiarts.wordpress.com
こんにちは、コンピュータビジョンを専攻しているmiyabiartsです。 私は職も知識もありませんしドクターですが、コンピュータビジョンに関してはプロフェッショナル。 今回は、モテるOpenCV女子力を磨くための4つの心得を皆さんにお教えしたいと思います。 1. あえてOpenCV1.0を使う あえてOpenCV1.0をインストールしましょう。 そして好みのOpenCV男子がいたら話しかけ、わざとらしくOpenCVを出していじってみましょう。 そして「あ~ん!このOpenCV本当にマジでチョームカつくんですけどぉぉお~!」と言って、男に「どうしたの?」と言わせましょう。 言わせたらもう大成功。 「OpenCVとか詳しくなくてぇ~!ずっとコレ使ってるんですけどぉ~!使いにくいんですぅ~!ぷんぷくり~ん(怒)」と言いましょう。 大体の男はOpenCV2.2を使いたがる習性があるので、古かったと
OpenCVのC++インタフェースで行列、および画像を扱うためのcv::Mat / cv::Mat_ですが、主要なクラスの割にはまとまった情報が少ないので、基本的な使い方を紹介します。 ここでは、通常の行列として用いる方法ではなく、あくまで画像として扱うものとします。 今回は、cv::Matの方の使い方について書きます。 次回は、cv::Mat_について書きますが、内容としては少し扱い方が違うだけでほぼ同じです。 cv::Matとcv:Mat_ まずは、今回の対象であるcv::Matとcv::Mat_について説明します。 いずれも行列、および画像を扱うための二次元配列を表します。 cv::Matは、行列の1つの要素を型なしとして扱い、アクセスする際に型を与えます。 cv::Mat_は、定義する際に型を与え、要素にアクセスする際には型を必要としません。 これらのクラスを利用するためには、以下
前に紹介した「OpenCVを用いた特徴点対応付け」を応用することで複数の画像をモザイキングすることができます。 今回は、OpenCVを用いて下に示す2枚の画像をモザイキングして、1枚の大きな画像を作ります。 今回の例では、2枚の画像が大体半分程度重なり合ってないと上手くいかないです。 あと、画像合成の関係上、1枚目の画像に対して2枚目の画像が左側になるように撮影しないと正しい結果が得られませんので気をつけてください。 モザイキングする画像 画像間の対応付け SURFで検出した特徴点間の対応を全て表示しています。 モザイキング結果 コード #include <opencv/opencv2.h> int main() { // モザイキングする画像 std::string fn1 = "image0.png"; std::string fn2 = "image1.png"; // 画像読み込み
OpenCV2.2になって、C++インタフェースが随分整理されましたので、色々と触っていました。 主に特徴点周りのクラスを見ていたのですが、画像から特徴点を検出し、画像間で対応付けるコードを簡単に書けるようになりました。 以下に2画像間の特徴点の対応付けのコードを掲載します。 #include <opencv2/opencv.hpp> // int main() { // 画像1の読み込み cv::Mat_<cv::Vec3b> img1 = cv::imread( "in1.jpg" ); // 画像2の読み込み cv::Mat_<cv::Vec3b> img2 = cv::imread( "in2.jpg" ); // SIFT用のデフォルトパラメータを設定 double threshold = cv::SIFT::DetectorParams::GET_DEFAULT_THRESHO
このページを最初にブックマークしてみませんか?
『Miyabiarts.net | 一年に一度の更新頻度』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く