在matlab中查找感兴趣对象的总像素数?

Nex*_*eer 2 matlab image image-processing

我想找到图像中对象的总像素数.

请考虑以下图像作为示例.我想找到三角形中的总像素数.

在此输入图像描述

我在用

imtool('test.jpg');
Run Code Online (Sandbox Code Playgroud)

并使用该measure distance工具并手动查找距离,从而找到三角形的面积以计算对象的总像素,在本例中为三角形.

这样做有效吗?

aar*_*rkk 5

这是一个方法:

img = imread('test.jpg');
thr = graythresh(img);
thr_img = im2bw(img,thr);
triangle_count = sum(sum(thr_img < thr))
Run Code Online (Sandbox Code Playgroud)
  1. 选择图像的阈值
  2. 基于此阈值对图像进行二值化
  3. 计算二值化图像中低于此阈值的像素数

在您的情况下,三角形中的像素数似乎约为1605037.

这是thr_img二进制化图像的可视化:

二值化图像