010:传统计算机视觉之大津算法初探

本文为合集收录,欢迎查看合集/专栏链接进行全部合集的系统学习。

合集完整版请参考这里

上一节学习了利用 Canny 算法来完成一个图片的边缘检测,从而可以区分出图像的边缘。

本节再了解一个计算机视觉中更常见的应用,那就是把图片的前景和背景的分离,也叫做图像分割。

什么是图像的前景和背景

在图像处理和计算机视觉中,"前景"和"背景"是指图像中的两个主要部分。

前景:前景是图像中引起人们兴趣或希望被重点关注的区域,通常指图像中的主要目标,或者在图像处理中你想要从图像中提取或识别的对象。

背景:简单理解就是除了前景之外的其余图像区域,作为陪衬的、通常是图像中次要的区域。

举个例子,上述图片一只猫在一个花园中,那么照片中的猫就是前景,而周围的花园景色就是背景。

在一些图像处理任务中,准确地分割前景和背景非常关键,例如,在图像分割领域中,我们就很希望将图像中的不同对象分离开来,这肯定需要识别然后分割前景和背景。

如何区别前景和背景

在继续阅读之前,你可以先想一下,如果让你自己来完成这个前景和背景的分割,在已学习的知识框架下,如何来完成呢?

你可能会想到先用灰度图简化一张图像。没错,前面已经介绍了灰度图,灰度图丢失了颜色信息,转而将彩色图像转化为了只有一个通道(灰度)的照片,在这样的照片里,所有像素的灰度值都限制在了0-255的范围内。

如果想要区分前景和背景,就需要找到一个灰度阈值,比如100,大于100的所有像素,称之为前景(或背景),而小于等于100的所有像素称之为背景(或前景)。

基于此,就可以把一张图片的前景和背景分开了。那现在问题转化为,如何选择一个合适的阈值,来将灰度图分开?

大津算法

大津算法就是专门做这个事的一种算法,这里不写具体的公式了,如果你对大津算法感兴趣可以直接去百度查一下,有很多公式推导。

这里从一个最通俗易懂的角度来说明大津算法是如何将一个灰度图分为前景和背景的。

大津是个日本学者,他在研究这个算法的时候可能这么想过:假设我已经找到了一个阈值,并且已经利用这个阈值将图像划分为两块区域(一块是所有像素点小于阈值的,一块是所有像素点大于阈值的),那么这两个区域可以看做是两个集合或者两个类别。

如果让前景和背景分割的效果最好,那肯定就是这两个集合(两个类别)之间的灰度值相差最大,这样区别才明显。

于是,大津定义了一个指标为两类中所有像素点的类间方差,如果类间方差最大,那么划分这两类的阈值分割出来的图像肯定就是最明显的。

类间方差最大,这是大津算法的一个核心思想。

方差大意味着两个数据的差别大,从而可以最大限度、最精确的来完成图像的前景和背景的分割。

那还是回到这个问题,如何确定这个阈值,使得小于它和大于它的两类图像的像素点类间方差最大呢?

大津也想了很多办法,发现从数学上几乎很难解决这个问题,但是这个问题数学上解决不了,不代表工程上解决不了。

工程实践解决

我们知道,灰度图的全部像素的值也就0-255。假设先设置阈值为0,那么就可以利用这个阈值计算出一个类间方差,记为S0; 然后再设置阈值为1,再计算出一个类间方差S1,一直尝试到设置阈值为255, 总共计算出256个方差,分别为 S0、S1、...、S255。

找到这256个类间方差最大的那个值,对应的阈值就是希望得到的阈值了。

这就是大津算法在实现时的另一个核心思想:灰度值遍历。

所以,总结一下,大津算法的核心思想有两个。

  • 第一个是数学上的:是求大于阈值和小于阈值所有像素点的方差,以类间方差为标准来划分前景和背景;

  • 第二个是工程上的:利用遍历法来遍历所有像素值,最终获得类间方差最大时对应的阈值。

对于计算机而言,遍历一个从 0-255 的数组的性能是很快的。因此,大津算法在效果和性能上都还不错,成为了在图像前景和背景分离中一个常见的算法。

相关推荐
HyperAI超神经16 小时前
在线教程丨英伟达开源LocateAnything,3B模型可实现图像+视频的目标指向/开放词汇目标检测/指代表达定位/OCR文本定位等功能
人工智能·目标检测·计算机视觉·ocr·目标文本定位
库拉大叔16 小时前
KULAAI 一站式 AI 编程与模型聚合平台效果实测
人工智能
诸葛务农16 小时前
溶液纳米颗粒净化技术及其在光刻胶纳过滤和提纯中的应用(上)
人工智能
oort12316 小时前
VLStream 全开源决策式 AI 视频平台 技术视角完整说明
大数据·开发语言·人工智能·经验分享·python·开源·音视频
Cloud_Shy61816 小时前
解读《Effective Python 3rd Edition》:从练气到老魔(第二章 Item 10 - 12)
c语言·开发语言·网络·人工智能·windows·python·编辑器
武子康16 小时前
Build-Your-Own-X 从零构建轻量级事件驱动微框架:嵌入式与物联网场景下的极简实践
人工智能·后端·物联网·ai·c#·大模型·嵌入式
人民新视野16 小时前
能力画像×场景适配:2026年5大会议管理系统厂商评测
人工智能
一个处女座的程序猿O(∩_∩)O16 小时前
Agent 到底是什么?—— 从概念到实践的全面解析
人工智能
码农小白AI16 小时前
农产品安全新标准:土壤溯源联动农残检测,IACheck 助力 AI 报告审核实现上下游数据精准对齐
人工智能·安全