首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我不能使用mahotas python模块获得一个好的具有灰色背景的二值图像?

为什么我不能使用mahotas python模块获得一个好的具有灰色背景的二值图像?
EN

Stack Overflow用户
提问于 2013-09-25 14:57:41
回答 1查看 133关注 0票数 0

我在mahotas图书馆的灰色背景图像中遇到了一些问题:

示例:

这是代码:

代码语言:javascript
复制
import mahotas as mh
path ="./imagepath/a.jpg"
fork = mh.imread(path)  
bin = fork[:,:,0]
bfork = bin <230

在那之后,我得到了:

我做了什么才能得到一个黑色背景和一个白色标志?我尝试过opencv模块,并且做得很好,但我更喜欢mahotas。

代码语言:javascript
复制
import cv2
path ="./imagepath/a.jpg"
ow =  int ((oshape[0]/100 )*7 )
oh =  int ((oshape[0]/100 )*7 )
gray = cv2.imread(path,0)
element = cv2.getStructuringElement(cv2.MORPH_CROSS,(ow,oh)) 
graydilate = cv2.erode(gray, element) 
ret,thresh = cv2.threshold(graydilate,127,255,cv2.THRESH_BINARY_INV) 
bin = thresh
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-26 11:43:42

您所做的与opencv版本不同。如果你这么做了,你就会得到想要的结果:

代码语言:javascript
复制
fork = mh.imread(path)
bin = fork[:,:,0]
bin = mh.erode(bin)
bin = (bin < 127)

没有侵蚀步骤,阈值也不同。

代码语言:javascript
复制
from matplotlib import pyplot as plt
plt.imshow(bin)
plt.gray()

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19008400

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档