ここでは動作するものがあります。この特定の画像にのみ調整されており、他の画像ではうまく機能しない可能性があります。
gamma = 1.5
でガンマ補正を実行します。その理由は、画像の右側に明るい金貨を強く持って、左の画像の金貨と一致させて、しきい値とセグメント化が容易にしたいからです。
ゴールドコインをスレッシュホールドするために、色相チャネルと飽和チャネルを使用します。
使用形態と閾値処理結果が
が12000画素未満の領域を有する任意の質量を削除有すること任意の穴を埋めます。
ステップ#1
あなたはimadjust
でガンマ調整を行うことができるとgamma = 1.5
で、あなたは単純に次のことを行います。私はStackOverflowのから直接やるイメージ内の最初のロードは、その後、ガンマ調整:
close all;
im = imread('http://i.stack.imgur.com/g4FCV.jpg');
im_enhance = imadjust(im, [], [], 1.5);
im
は、元の画像であり、im_enhance
が強調された画像です。見て少し難しい
が、あなたは上の画像をクリックして画像を自分で拡大場合は、画像の右側にその金の色が表示されます:私たちは、以下の強調画像を得ます以前よりもわずかに暗いです。
ステップ#2
まずrgb2hsv
を使用してHSVにあなたのイメージを変換:
hsv = rgb2hsv(im2double(im_enhance));
私はimshow(im_enhance)
を行うことによって、上記の画像オープンでimpixelinfo
を使用して見ることが金貨の上に私のマウスを推移し、後どのような色相と彩度があったのですか?検査では、金色のコインと銀貨を区別するために、色相の値がおおよそ0.25以下であり、飽和の値が0.25以上であることがわかりました。そのため、しきい値にこれらの範囲を使用し、金貨に属し、どのようなことはないかを表示しますバイナリマップを取得:
ない:
gold_coins = hsv(:,:,1) < 0.25 & hsv(:,:,2) > 0.25;
は、我々は今、この画像を取得します完璧。白い塊が金貨に属し、穴が空いているものが銀色であることがわかります。我々は次のやる何
ステップ#3
は金のオブジェクトは、あなたが金のことになっているすべての領域を取得することを確認する必要がありますことを任意の穴を埋めています。代わりに'holes'
オプションを使用してimfill
を使用してください。
gold_coins_fill = imfill(gold_coins, 'holes');
現在入手:
グレートが、再び我々はに対処するための銀のコインを持っています。金貨は完璧です。銀のコインに属している任意の塊を削除するには
ステップ#4
、私は以下の12000個の画素を有するマスク内のすべての領域を削除します。これは試行錯誤によって行われました。あなたはこれを行うには、この画像の上に2番目のパラメータとして12000を機能bwareaopen
を使用して指定することができます。
gold_coins_final = bwareaopen(gold_coins_fill, 12000);
我々は今取得:
完全なコードは、あなただけしたい場合これをコピーして貼り付けて実行すると、次のようになります。
% Step #1
close all;
im = imread('http://i.stack.imgur.com/g4FCV.jpg');
im_enhance = imadjust(im, [], [], 1.5);
% Step #2
hsv = rgb2hsv(im2double(im_enhance));
gold_coins = hsv(:,:,1) < 0.25 & hsv(:,:,2) > 0.25;
% Step #3
gold_coins_fill = imfill(gold_coins, 'holes');
% Step #4
gold_coins_final = bwareaopen(gold_coins_fill, 12000);
imshow(gold_coins_final);
um estionは広すぎて答えられません。代わりに**あなたが問題を抱えていることを正確に*記述します**。私はそれが最初のステップだと考えます。 MATLABでRGBをHSI画像データに変換することについて、どのような研究を行っていますか?あなたのgoogle/stackoverflow研究の結果の何がわかりませんでしたか? –
Ok Markus。私はコイン認識システムmatlabを使用しています。それらは私の国の硬貨の模範的な写真です。私は写真をチェックし、写真のコインの合計金額を計算する必要があります。私のアプローチは1.色が見えるように画像を強調します。 2.それぞれのコインを識別し、それらを刈る。3.次に、その色を識別し、それらを2つのグループカラーの銀と金に分割する。 4次に、各色の色から1つのコインを作成してその価値を確認します。 –
私が上記で尋ねた質問に関してはまったく何も説明していません:**どこにいらっしゃいましたか?**これは本当に無料のコード作成サービスなので、あなたの問題を1つの正確な質問に凝縮させるか、それ以外の場合はあなたを助けることはできません。 –