首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么要在imshow()中传递3个点来绘制hsv?

为什么要在imshow()中传递3个点来绘制hsv?
EN

Stack Overflow用户
提问于 2019-12-03 22:41:50
回答 1查看 90关注 0票数 1

我正在浏览一些视频和一些文件,在那里我遇到了一个代码,如下所示:

代码语言:javascript
复制
im_hsv = color.rgb2hsv(im)

plt.gray()
plt.figure(figsize=(10,8))
plt.subplot(221), plt.imshow(im_hsv[...,0]), plt.title('h', size=20), plt.axis('off')
plt.subplot(222), plt.imshow(im_hsv[...,1]), plt.title('s', size=20), plt.axis('off')
plt.subplot(223), plt.imshow(im_hsv[...,2]), plt.title('v', size=20), plt.axis('off')
plt.subplot(224), plt.axis('off')
plt.show()

在第3-5行代码中,为什么有三个点跟在0后面?没有这些点,我只能得到一条垂直线。

EN

回答 1

Stack Overflow用户

发布于 2019-12-03 22:54:25

...符号被称为Python Ellipsis对象。当您尝试分别绘制h、s和v通道时,图像由3个维度组成,应使用':‘表示每个通道的维度。相反,您可以简单地使用Ellipsis对象。im_hsv[...,0]等同于im_hsv[:,:,0]。它可能看起来不必要,但当您处理超过3个维度时,它是有用的,并增加了可读性。

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

https://stackoverflow.com/questions/59159561

复制
相关文章

相似问题

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