CPU指令集——图像处理方向算子收集
阈值分割,得到二值图,高于阈值的为255
__m256i 阈值= _mm256_set1_epi8(阈值); __m256i 图像1= _mm256_subs_epu8(原图像, 阈值); //低于阈值的都为0 __m256i 二值图 = _mm256_cmpeq_epi8(图像1, _mm256_set1_epi8(0));//低于阈值的为255,高于阈值的为0 二值图 = _mm256_andnot_si256(v, _mm256_set1_epi8(-1));//取反,低于阈值的为0,高于阈值的为255
面积,统计255的个数
int nMask = _mm256_movemask_epi8(二值图);//提取每8位的最高位组成一个32位dst 面积+= _mm_popcnt_u32(nMask);//32位中1的个数。即像素灰度为255的个数。循环完毕后就是目标面积(含噪点,越大表明噪声越多)