自分用開発メモ。 imagemagick, GNU make, jquery, YUI, Cassandra, MT, Javascript... 節操なく色んなことに手を出してます。 開発環境はdebian lennyだったけど、今は Mac or Ubuntu 10.04
自分用開発メモ。 imagemagick, GNU make, jquery, YUI, Cassandra, MT, Javascript... 節操なく色んなことに手を出してます。 開発環境はdebian lennyだったけど、今は Mac or Ubuntu 10.04
一般的に ImageMagick のサムネイル画像生成は遅いとされており、パフォーマンスが求められるシーンでは Imlib2 などのより高速な画像処理ライブラリが使われることが多いです。 Imlib2 の高速さについては、以前「Imlib2でImageMagickより3倍高速かつ美しいサムネイル画像の生成 - 床のトルストイ、ゲイとするとのこと」という記事で紹介しました。この記事のベンチマークにおいて、Imlib2 によるサムネイル画像の生成は、 ImageMagick の3倍程高速でした。 しかし、 ImageMagick は Imlib2 より画質がよく、高機能で使いやすく、今も頻繁にメンテナンスされており、とてもよく出来ています。その点 Imlib2 は、2004年からメンテナンスされておらず、セキュリティホールが見つかっても、各Linuxディストリビューションがそれぞれパッチを当て
8つのマスクごとに計算し、最大の差分値をエッジの強さとする方法である。 輪郭抽出例 具体的な画像データに対して、一次微分を用いて輪郭を抜き出す例を示す。 はじめに、説明した後にプログラムを示す。 3章で作成した2値化のプログラムと、 ヒストグラムファイル出力のプログラムを用いて、二値化する 。 はじめに、Lenna.bmpに対して(4.1), (4.2)式を適用する。ただし、Robertsオペレータを 用いる。 適用して得られる値は、0~255*sqrt(2)の範囲を取るので、255を越えた値は255とする。 この結果を次に示す。 この画像を二値化するのに、閾値の値を次のようにヒストグラムから求める。 ヒストグラム ヒストグラムは上のようになった。 このグラフを見ながら、閾値を与えた例を次に示す。 二値画像例 左から順番に、閾値40, 150, 250である。 細線化例 上の閾値150で二
Githubで画像の差分を見られるモードが話題を呼びましたが、このように2枚の画像の差分を調べたいときって時々ありますよね。 そんなときImageMagickのコマンドラインツールを使えば、たった1行で実現できます。 $ composite -compose difference A.jpg B.jpg diff.jpg とすれば、A.jpg と B.jpg の差分画像 diff.jpg が作られます。この差分画像は以下のようになります。 さらにこの差分画像(diff.jpg)が「真っ黒な画像」かどうかも、コマンドラインで調べることができます。 # 差分がなかった場合(=diff.jpgは黒一色の画像) $ identify -format "%[mean]" diff.jpg 0 # 差分があった場合 $ identify -format "%[mean]" diff.jpg 960.8
DiffImgは画像の差分を抽出するツールです。 2つの画像を指定して、その差分を示してくれます。 間違い探しの画像を2つ比較したらすぐに答えが分かりそうですね。 また、加工された画像かどうかなどの比較にも使えそう。 以下に使ってみた様子を載せておきます。 04/28 ~ 05/06 ゴールデンウィークということで更新お休みします。 まず「DiffImg」にアクセスしましょう。 ツールをダウンロードしてインストールしましょう。 インストールは特に難しいこともなく、一瞬で終わります。 この2つの画像を比較してみます。 一見同じ写真?と思ってしまいますね。 比較するとこのとおり。差分が表示されました。 元の画像と横に並べて比較することもできますよ。 画像の比較をしたいときにどうぞ!
Viola-Jones法による顔検出 顔検出で現在主に使用されているのは、ViolaとJonesの2人が考案した「Viola-Jones法」というアルゴリズムです。Viola-Jones法では、顔検出を行いたい対象の1枚の画像に対して、以下の図のように探索窓(例えば8ピクセル×8ピクセルのような判定領域)を左上から走査して順番に動かしていきます。 この探索窓の領域ごとに、あらかじめBoostingという機械学習アルゴリズムにより作成しておいたCascade構造の識別器というものにより、顔画像であるかどうかの判定を行います。このように、「各探索窓において顔が存在するかどうかをCascade構造の識別器により高速に判定する」というのが、顔検出の基本的な流れです。 Viola-Jones法でポイントとなるのは、以下の2つのステップの処理です。 前処理:大量の学習データを用いたAdaBoostによ
顔検出機能はここ数年で急激に普及してデジカメとかケータイとかにフツーに入るようになったり、Google画像検索のオプションに入ってたりして、すっかりコモディティ化しちゃってるけど、ちょっと前まではすごい困難で実用化に手を出すなんてとてもとてもな技術だったんだよね。 2001年のViola & Johnsの論文*1で超高速&超正確な検出アルゴリズムが発表されるまでは。 これの画期的だった点は非力なパソコン(とか現在のケータイ内蔵CPUとか)で画像中からリアルタイムに顔を検出できたことなんだ。 キモは3点。 Integral-ImageによるHaar-like検出器の高速演算 AdaBoostによる検出能力の強化 多段フィルタ(cascade)による非顔領域の高速排除 具体的にどれがViolaらのオリジナルの仕事なのかはよく知らないけれど。 少なくとも一個目と三個目はそうな気がする。 Inte
統計学の基本について教えて下さい。「標準偏差」、「分散」とは何ですか? 統計学の勉強を始めたばかりです。早速、「ばらつき」のところでつまずいてしまいました。 【質問1】 「平均偏差」は「偏差の平均」であり、例えば数学のテストで平均点が62点、平均偏差が14点といえば、平均して14点くらい平均点からばらついているということだと思います。これはこれでよく分かります。では、「標準偏差」とは何なんですか? 何でわざわざ2乗の平均をルートしなければならないのですか? 例えば標準偏差が14点だといわれても、その14という数字にどんな意味があるのですか? 【質問2】 「標準偏差」は「分散」をルートした数字なので、逆に「標準偏差」を2乗すると「分散」になるのだと思いますが、この「分散」という数字には意味があるのでしょうか? あくまで「標準偏差」を出す計算過程の数字であって、その数字自体には意味がないという
(1)最初に平均を求めます。 (3+3+4+2+2+1+3+2+3+4+4+5)÷12=36÷12=3 電卓で計算するときは次のように操作します。 3+3+4+2+2+1+3+2+3+4+4+5÷12=【答3】 (2)各データと平均との差を求め、その2乗を合算します。 (3-3)^2+(3-3)^2+(4-3)^2+(2-3)^2+(2-3)^2+(1-3)^2+ (3-3)^2+(2-3)^2+(3-3)^2+(4-3)^2+(4-3)^2+(5-3)^2 =0+0+1+1+1+4+0+1+0+1+1+4 =14 ここで^の記号はべき乗(るい乗)を表しています。 電卓で計算するときは次のように操作します。 メモリをクリア後、 3-3×[M+] 3-3×[M+] 4-3×[M+] 2-3×[M+] 2-3×[M+] 1-3×[M+] 3-3×[M+] 2-3×[M+] 3-3×[M+] 4
ある集団についてのデータがどのように分布しているかを表すものとして、その集団の代表値★(中心の値)を示す平均値及びそのばらつき具合を示す散布度がある。平均には算術平均が、散布度には標準偏差がよく用いられている。 1.度数分布表・ヒストグラム データがどのように分布しているかその実態を把握するには、データをその大きさによりいくつかの階級に区分し、その階級ごとの個数 (度数) をカウントして表にした度数分布表、あるいは、それを棒グラフにして表わしたヒストグラムが適している (表1、図1) 。 例えば、年齢別人口や従業者規模別事業所数など多くの統計表は度数分布表の形で作成され、また、年齢別人口をヒストグラムにした人口ピラミッドは人口構造の分析等によく用いられている。 2.平均値★ 一般に平均値には、単純平均 が多く使われている。平均値は通常μ(ミュー) と表示される。 3.標準偏差
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く