自动摘要: title:阈值分割 tags: cv categories: 框架 opencv toc:false date:2020030901:26:44 ……..
title: 阈值分割
tags:
- cv
categories:
- 框架
- opencv
toc: false
date: 2020-03-09 01:26:44
什么是图像阈值
灰度值 0–>255 黑–>白 暗–>亮
工作原理
所有阈值算法都将源图像(src)和阈值(thresh)作为输入,并通过将源像素(x,y)的像素值与阈值进行比较来生成输出图像(dst)。如果src(x,y)> thresh,则为dst(x,y)分配一个值。否则,将为dst(x,y)分配一些其他值。
二值化(type = THRESH_BINARY )
最简单的阈值形式称为二值化。除了源图像(src)和阈值(thresh)之外,它还使用另一个称为最大值(maxValue)的输入参数。在每个像素位置(x,y),它将像素值src(x,y)与thresh进行比较。如果src(x,y)大于thresh,则将目标图像像素dst(x,y)的值设置为maxValue,否则将其设置为零。
- 二值化(thresh = 0和maxValue = 255)
-
- 二值化(thresh= 127,maxValue= 255)
-
- 将maxValue设置为128的二值化
-
反向二值化(类型= THRESH_BINARY_INV)
反向二值化与二值化恰好相反。如果相应的源像素大于阈值,则将目标像素设置为零;如果源像素小于阈值,则将目标像素设置为maxValue。
反向二值化(thresh = 127,maxValue = 0)
截断阈值(类型= THRESH_TRUNC)
在这种类型的阈值处理中,如果源像素值大于阈值,则将目标像素设置为阈值( thresh) 。否则,将其设置为源像素值。maxValue被忽略。
- 高于阈值(127)的所有值均被设置为127,并且小于或等于127的所有值均保持不变。maxValue被忽略。
零阈值(类型= THRESH_TOZERO)
在这种阈值化中,如果源像素值大于阈值,则将目标像素值设置为对应的源像素值。否则将其设置为零。maxValue被忽略。
- 零阈值(阈值= 127)
反转零阈值(类型= THRESH_TOZERO_INV)
在这种阈值处理中,如果源像素值大于阈值,则将目标像素值设置为零。否则,将其设置为源像素值。maxValue被忽略。
将阈值反转为零,低于阈值的数字保留其灰度值,高于阈值的数字为0(边界除外)。边界上的伪影是由于以下事实:边界上的像素值从0过渡到几个像素上的数字值。因此,某些边界像素低于阈值。
1 |
|
1 |
|