百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

计算机视觉-基于密度的图像二值化

bigegpt 2024-08-05 11:52 9 浏览

前言

之前处理图像二值化时使用的是经典的Otsu算法,这次要求使用Fuzzy Density Model去做一个图像二值化处理,网上参考文档除了作者的论文,几乎为零,可参考代码都没有。所以读完论文后特地记录一下。先声明:这篇论文还没有完全理解吸收,记录自己学习过程,如果有误,欢迎交流

论文简介

一般图像二值化的处理是对图像灰度化后,处理其直方图,取其中的一个点作为threshold,以此为界,将图片中灰度小于该点的值、大于该点的值分成两部分。

Fuzzy Set Theory

作者先介绍了一个称作Fuzzy Set的理论。令X={X1,X2....Xn},函数μ,它将X中的每个元素映射到[0,1]区间上,即对于X中元素Xi,有: 0<=μ(Xi)<=1,令A={( Xi , μ(Xi) )},A即为X上的Fuzzy Set。相当于对于X中的每个元素给予了一个0-1的权重。这里的μ特别地被称为membership function。

Fuzzy Set Model

何为图像密度?以下图为例,假设点距离圆心越近,则拥有越高的权重,那么我们可以得出(a)图中点权重之和比上以r为半径的圆面积,大于,(b)图中点权重之后比上以r为半径的圆面积

论文里提到了三个membership function,分别为 - Zadeh’s S-membership function

- Gamma membership function

- Gaussian membership function

这里引入fdm(r,p)函数,用于计算fuzzy density,r为计算的图像区域,p为区域内的点。fdm计算结果越高,则相似度越大。

Threshold Selection Method

对于图像的直方图有明、暗两部分,对于Object(亮部),显然有灰度越小,越暗,权重越低,对于Background则反之,所以如果我们分别选取灰度图中最大、最小作为明暗中心,做出他们的fdm函数,大致如图

交界处即为所需要的threshold。

The Rest

论文剩余部分对左右两个初始区域、以及threshold的适当调整做了更近一步探讨,这里暂时不记录了(主要是没有看大明白。。。),有兴趣读者可以查看作者原论文

实践

Lang:Python Package:PIL

# Created by william wei on 17/1/7.
# Copyright ? 2017年. All rights reserved.
import PIL
import math
from PIL import Image
Xmin=0
Xmax=0
hist = []
def membership_function(x):
 b = (Xmin+Xmax)/2
 x = x*1.0
 if x <= Xmin:
 return 0
 if x>Xmin and x<=b:
 return 2*math.pow( (x-Xmin)/(Xmax-Xmin), 2 )
 if x>b and x<Xmax:
 return 1-2*math.pow( (x-Xmax)/(Xmax-Xmin), 2 )
 if x>=Xmax:
 return 1
 return 0
def fdm(x,y,inverse=0):
 global Xmin,Xmax
 result = 0
 num = 0
 for i in xrange(x,y):
 num = num+hist[i]
 if inverse==1:
 result = result+hist[i]*membership_function(Xmax-(i-Xmin))
 else:
 result = result+hist[i]*(membership_function(i))
 return result/num
if __name__ == "__main__":
 im=Image.open('cherry.png')
 im = im.convert('L')
 hist = im.histogram()
 threshold = 0
 for i in xrange(0,256):
 if hist[i] > 0:
 Xmin = i
 break;
 for i in xrange(0,256):
 if hist[255-i] > 0:
 Xmax = 255-i
 break;
 for x in xrange(Xmin+1,Xmax):
 left = fdm(Xmin,x,1)
 right = fdm(x,Xmax)
 if left<right and threshold == 0:
 threshold = x
 print threshold
 height,width = im.size
 bkg = im.convert('L')
 obj = im.convert('L')
 for x in xrange(0,height):
 for y in xrange(0,width):
 pixel = im.getpixel((x,y))
 print (threshold)
 if pixel<threshold :
 obj.putpixel((x,y),0)
 else:
 bkg.putpixel((x,y),0)
 bkg.save('bkg.png')
 obj.save('obj.png')

效果如图: - 原图

- Object

- Background

再说点

效果说实话,确实不是很好,比Otsu差不少,不过这倒不是作者的问题,应该是把论文剩余部分读完的原因吧,姑且先这样,后面有时间再回来研究一下。

相关推荐

Linux 命令 ncftp(文件传输)——想玩转linux就请一直看下去

我是IT悟道,点击右上方“关注”,每天分享IT、科技、数码方面的干货。Linuxncftp命令Linux命令大全Linuxncftp命令用于传输文件。FTP让用户得以下载存放于服务器主机的文件,...

玩转 Linux 之:磁盘分区、挂载知多少?

今天来聊聊linux下磁盘分区、挂载的问题,篇幅所限,不会聊的太底层,纯当科普!!1、Linux分区简介1.1主分区vs扩展分区硬盘分区表中最多能存储四个分区,但我们实际使用时一般只分为两...

一文带你了解 Linux 文件权限,从基础到高级

在Linux中,每个文件和目录都关联了一组权限,定义了不同用户对其的访问能力。权限分为三类:读取(read,r)、写入(write,w)和执行(execute,x),分别用字母r、w、x...

Linux 使用 socat 让云服务器作为跳板机的方法

概念三台机器:客户端A(192.168.1.11)服务器B(192.168.1.88)跳板机C(192.168.1.32)实现A与B的双向数据传输,本该这样:A<...

Linux启动流程之ROM-CODE(linux启动详解)

1.从哪里开始?下图是AM335X核心板和功能框图:AM335X核心板的存储信息如下:AM335X核心板运行linux系统,在这里提出一个问题:上电后指令从哪里开始执行?DDRorEMMC?2....

「Linux」——select和epoll详解(linux epoll详解)

select和epoll详解select和epoll的区别(面试常考)select一、什么是select1.select函数原型2.参数解释3.参数timeout取值4.返回值5.监控原理二、sele...

Linux中使用输入输出和错误重定向, 赶紧收藏!

Linux中的每个进程都提供三个打开的文件(通常称为文件描述符),分别是标准的输入、输出和错误文件。StandardInput是键盘,抽象为文件,使编写脚本和程序更容易。StandardOut...

「正点原子Linux连载」第七十一章Linux 4G通信实验

1)实验平台:正点原子Linux开发板2)摘自《正点原子I.MX6U嵌入式Linux驱动开发指南》关注官方微信号公众号,获取更多资料:正点原子第七十一章Linux4G通信实验前面我们学习了如何在Li...

LSM Oops 内存错误根因分析与解决

作者简介:吴文涵,图形算法出身,同时热爱linux内核开发的工程师,喜欢推导并乐于分享。版权声明:本文最先发表于“泰晓科技”微信公众号,欢迎转载,转载时请在文章的开头保留本声明。Oops是...

连你家电器的算力都不放过,新发现Linux恶意软件用IoT设备挖矿

萧箫发自凹非寺量子位|公众号QbitAI继电脑和手机后,挖矿病毒也盯上了IoT设备。无论是智能冰箱、彩电还是洗衣机,但凡有点算力的(物联网和端侧)设备都可能被这种病毒感染,用于挖掘加密货币等...

Linux-AT命令干货分享,还不赶紧收藏!

苹果iOS 26锁屏大升级:更个性更沉浸 有五大亮点

【CNMO科技消息】CNMO注意到,苹果近日在iOS26开发者预览版中推出了多项锁屏界面创新功能,可以大幅提升用户个性化设置与操作便捷性。这些更新不仅优化了视觉体验,还通过技术手段增强了交互效率,为...

福彩 3D 第 2025178 期:心水407 !大小奇偶双平衡 + 跨度适配,速收藏

福彩3D第2025178期:497后和值回落!五维分析+形态调整策略福彩3D2025177期开奖号码497,组六形态,大小比2:1,奇偶比1:2,和值20,跨度5。面对大...

一加 Ace5 至尊版手机首发适配和平精英手游

7月8日消息,据用户反馈,一加Ace5至尊版手机开启新版本系统推送,升级包大小约6.83MB、版本号为15.0.2.215(CN01),适配了腾讯《和平精英》手游144Hz高刷。IT...

外媒称苹果今年秋季将推出超15款新品 远不止iPhone 17

【CNMO科技消息】2025年已过半程,有外媒指出苹果计划在今年秋季推出超过15款新产品,涵盖iPhone革新、M5芯片设备迭代、可穿戴设备升级及智能家居布局等。苹果1.iPhone17系列:产品...