关于pylab中的contour函数的问题
本帖最后由 御笔剑客 于 2019-9-18 21:22 编辑from PIL import Image
from pylab import *
im = array(Image.open('F:\\1.jpg').convert('L'))
figure()
gray()
contour(im, origin='image')
# axis('equal')
# axis('off')
figure()
hist(im.flatten(), 128)
show()
这个函数是参数是什么意义呢?为什么能获得图像的轮廓,求dalao指点一下 本帖最后由 傻纸 于 2019-9-18 23:29 编辑
不懂,但是有pylab,据说是包含了matplotlib.pyplot和numpy,所以我试着把这样写,程序也可以运行
from PIL import Image
from numpy import *
from matplotlib.pyplot import *
im = array(Image.open('F:\\cat.jpg').convert('L'))
print(im)
contour(im, origin='image')
show()
这个它先把那个图转化成8位黑白图模式L
然后im就成一个数组(矩阵)
然后contour(Z)这个用来创建一个包含矩阵 Z 的等值线的等高线图,其中 Z 包含 x-y 平面上的高度值。参考https://ww2.mathworks.cn/help/matlab/ref/contour.html ,里面有些例子,不知道对你有没有帮助,反正我是没有看懂。。
把矩阵转化成一个等高线图,这个貌似是计算机图形学里的,我这会也不懂,所以没办法了。。 傻纸 发表于 2019-9-18 23:27
不懂,但是有pylab,据说是包含了matplotlib.pyplot和numpy,所以我试着把这样写,程序也可以运行
对,我就是不太明白为啥等高线图会是轮廓图了{:10_266:} 还没学到这儿,先mark下 我还没学过PIL, 在这里我先mark一下 mark是什么意思?痕迹? 还没学到这儿,先mark下 contour函数感觉距离很远 contour(Z) :绘制矩阵Z的等高线
contour(Z,n) :设置等高线的根数(画出来有n根等高线)
contour(Z,v) :v是元素随下标单调递增的一维向量,用来设置等高线的值。即在固定的几个值的位置设置等高线。
contour(X,Y,Z), contour(X,Y,Z,n) 和 contour(X,Y,Z,v),同时设置坐标值。
出自https://blog.csdn.net/kai165416/article/details/73743201
页:
[1]