前回はオブジェクト・トラッキングを行うために動画像から数枚のフレームを取り出し。そういうことでScilabのIPCVには動画像をハンドリングするためのツール類も含まれています。静止画から動画をエンコードしたり、動画像から静止画を切り出したりする程度のプリミティブな作業っすけど。今回は使いそうな奴らを撫でてみます。
手習ひデジタル信号処理(166) Scilab、{IPCV}、Object Tracking
ScilabのIPCV使わせていただいていて、Helpファイルのサンプルが正常に動かね~とかいう事態はアリガチ。今回もオブジェクト・トラッキングを行おうとしたらいけません。IPCVの関数がイケない?のかと疑ったらば、まさかの「矩形描画」関数の問題みたい。IPCVの関数は濡れ衣?代替手段ありーのでなんとかなったけれども。
“手習ひデジタル信号処理(166) Scilab、{IPCV}、Object Tracking” の続きを読む
手習ひデジタル信号処理(165) Scilab、{IPCV}、ROI をフィルタ
前回はFFTかけて周波数ドメインでフィルタしてから元画像に戻す操作を練習。しかしその適用は全画面に一律でした。今回は画像の一部領域(ROI、Region of Interest)のみにフィルタをかける関数を練習してみます。まあフィルタかけてもお惚け老人は、よくよく見て気づく程度なんだけれども。老眼はツライよ。
手習ひデジタル信号処理(164) Scilab、{IPCV}、周波数ドメインで画像をフィルタ
前回は2次元画像用の周波数ドメインでのフィルタを設計するときに「お役立ち」らしいフィルタの可視化ツールを練習。今回は前回やらなかった、肝心の画像をフィルタするところをやってみます。フーリエ変換後フィルタでご所望の周波数帯を取り出してフーリエ逆変換で戻すというフツーの使い方。素人老人は全ステップ「可視化」して確認。OK?
手習ひデジタル信号処理(163) Scilab、{IPCV}、フィルタの可視化ツール
今回は2次元画像用の周波数ドメインでのフィルタを設計するときに「便利」らしい可視化ツールです。これが何故か充実。3種類もあります。素人老人はその理由を知らず。まあお好みで使えるっと。しかし実際の画像に周波数ドメインでのフィルタを適用してみないとその御利益が身に染みないのお。しかしそれは次回か。
“手習ひデジタル信号処理(163) Scilab、{IPCV}、フィルタの可視化ツール” の続きを読む
手習ひデジタル信号処理(162) Scilab、{IPCV}、画像の輪郭抽出
今回は画像の輪郭抽出を行ったのち、その輪郭のConvex Hull(凸包)まで一気に処理せんとの野望あり。というか処理例がそうなっていただけのことなのですが凸包いけませぬ。毎度の処理例途中でのエラー、いろいろ突いてみるもなんともはや動きませぬ。元より素人、分かっておらんからの~。そこで手前の輪郭抽出でお茶を濁しました。
“手習ひデジタル信号処理(162) Scilab、{IPCV}、画像の輪郭抽出” の続きを読む
手習ひデジタル信号処理(161) Scilab、{IPCV}、アフィン変換とその眷属
今を去ること半世紀以上前、中学の幾何の先生が「アフィン変換」なる言葉をつぶやいた強烈な記憶アリ。しかしその時もその後も理解できたような気もせぬままに生きてきた老人です。さて今回手習ひしてみるのはアフィン変換です。画像を平行移動、回転、拡大縮小、せん断変形させるものです。変換関数だけでなく、眷属どもが意外と便利。
手習ひデジタル信号処理(160) Scilab、{IPCV}、Image fusion
前回はベクタライゼーション処理、今回は「画像の融合」です。フュージョンってやつ。お約束というか、例によってというか、ScilabのHelpファイルの処理例をそのまま動かそうとするとエラー。まあソフトウエアの更新とHelpファイルが一致してないのだと思います。一つ一つ動く条件を詰めていく?これも修行じゃ?そういうこと? “手習ひデジタル信号処理(160) Scilab、{IPCV}、Image fusion” の続きを読む
手習ひデジタル信号処理(159) Scilab、{IPCV}、ベクタライズの功徳よの
前回はベクタライズ処理のため、画像をメモリ上に列行列化して展開するim2col関数を練習。でも、ベクタライゼーションの功徳は処理速度です。今回は同じ画像に対してベクタライズ対応の処理関数とそうでないものでどのくらい速度差が出るのかを観察してみます。まあ、Helpファイルの処理例を並べて比べてみただけなんだけれども。
“手習ひデジタル信号処理(159) Scilab、{IPCV}、ベクタライズの功徳よの” の続きを読む
手習ひデジタル信号処理(158) Scilab、{IPCV}、im2col、画像の列行列化
今回は im2col 関数を試用してみます。どんな関数なのかとHelpを読めば “Convert image into series of columns” と書かれております。画像処理素人老人はナンジャラホイ状態です。これはフィルタなどより1段階ローレベルなところでベクタライゼーションを活用するためのデータ再配置のための関数みたいです。 “手習ひデジタル信号処理(158) Scilab、{IPCV}、im2col、画像の列行列化” の続きを読む
手習ひデジタル信号処理(157) Scilab、{IPCV}、画像のフィルタ再び
別シリーズにて「ラプラシアン演算子」登場。当然、本シリーズにて「ラプラシアン・フィルタ」を練習済だよね、といって探してみたらまさかの不在デス。行き当たりばったりで練習してきているので「有名どころ」でも結構漏れてますなあ。これはイケないということで、今回は2次元画像のフィルタについて再び練習してみます。
“手習ひデジタル信号処理(157) Scilab、{IPCV}、画像のフィルタ再び” の続きを読む
手習ひデジタル信号処理(156) Scilab、{IPCV}、stitching、画像連結
前回は「最近のカメラだったら出来て当然」のお顔検出。今回も「できて当然」機能です。複数枚の写真を繋ぎあわせて「パノラマ画像」を作るような操作。Image Stitchingと唱えるようです。前々回でやったような画像特徴点を取り出して「同じ」とみなせる点を重ねていくみたいです。でもHELP例がエラーになるのよ。 “手習ひデジタル信号処理(156) Scilab、{IPCV}、stitching、画像連結” の続きを読む
手習ひデジタル信号処理(155) Scilab、{IPCV}、Haar Cascadeでお顔
前回は画像特徴点の抽出関数どもを使用。交通標識の識別を試みました。今回も「古典的」な画像認識の手法です。Haar Cascadeとな。画像の中から「お顔」に見えるような領域を検出するのに向いたカスケード構造の分類器らしいです。最近のカメラだったら出来て当然?の機能か。その昔デモ見たときはビクッリしたもんだが。
手習ひデジタル信号処理(154) Scilab、{IPCV}、一致する画像を見つける
前回、前々回と画像特徴点の抽出関数を「手習ひ」。今回は抽出した特徴点(位置)から記述子を計算し、一方の画像に一致する可能性の高い別な画像(回転しているので単純画像比較は不可)を見つける操作を行ってみます。といってHelpファイルに書かれている方法そのままなんだけれども。やっぱアルゴリズムによって結果は違うみたい。