<< DistanceTransform IPD - Image Processing Design EdgeFilter >>

IPD - Image Processing Design >> IPD - Image Processing Design > DrawBoundingBoxes

DrawBoundingBoxes

は物体を境界する四角を描く

呼び出し

DrawBoundingBoxes(BlobList, Color, FigureHandle);

引数

BlobList

ブロブの特徴を含むリストで、AnalyzeBlobsで生成される

Color

構成要素3つになるベクトルで、 各構成要素は0以上で、1以下である

FigureHandle

境界する四角を描くが描かれるウィンドーのハンドルである。本引数はオプショナルである。指定されないと、現在のウィンドーに描かれる。

説明

本関数は物体を境界する四角を描く。従って、画像に発見された物体に記しを付ける可能性がある。

global IPD_PATH;

RGB = ReadImage(IPD_PATH + 'demos\teaset.png');

Image = RGB2Gray(RGB);

Image = uint8(255 * ones(size(Image, 1), size(Image, 2))) - Image;

ThresholdedImage = SegmentByThreshold(Image, 100);

BlobImage = SearchBlobs(ThresholdedImage);

FilteredBlobImage = FilterBySize(BlobImage, 10000); // Small objects are removed.

IsCalculated = CreateFeatureStruct(%f); // Feature struct is generated.

IsCalculated.BoundingBox = %t; // The bounding box shall be calculated for each blob.

BlobStatistics = AnalyzeBlobs(FilteredBlobImage, IsCalculated);

FigureWindow = figure();

ShowImage(FilteredBlobImage, 'Blob Image', jetcolormap(4));

DrawBoundingBoxes(BlobStatistics, [1 1 1], FigureWindow); // Bounding boxes are drawn in white.

参考

<< DistanceTransform IPD - Image Processing Design EdgeFilter >>