我第一次使用Python + Scipy + Scikit-image + numpy。
我正在使用this页面寻求帮助,而且我只是更改了给定的代码以获取我喜欢的图像:
tree = misc.imread('C:\\Users\\app\\Pictures\\treephoto1.jpg')
type(tree)
<type 'numpy.ndarray' >
tree.shape, tree.dtype((512, 512), dtype('uint8'))
但我收到以下错误:
type(tree) <type 'numpy.ndarray'>
^
SyntaxError: invalid syntax
语法有什么问题?我在Windows上使用python 2.7,所有相关的工具包也都是根据Python 2.7。
我需要将图像转换为2-D numpy数组,以便我可以使用canny边缘检测器。
答案 0 :(得分:3)
不经思考写作可能很危险,但在你的情况下,这是错误的。您提到的页面显示了这一点:
>>> lena = misc.imread('lena.png')
>>> type(lena)
<type 'numpy.ndarray'>
>>> lena.shape, lena.dtype
((512, 512), dtype('uint8'))
>>>
是Python的交互式控制台提示字符串。这是命令。
<type 'numpy.ndarray'>
和((512, 512), dtype('uint8'))
是结果的命令。所以你的相应代码应该只是
tree = misc.imread('C:\\Users\\app\\Pictures\\treephoto1.jpg')
type(tree)
tree.shape, tree.dtype
请注意
type(tree)
tree.shape, tree.dtype
什么都不做,只是向您展示有关图像数据的信息。
<强>更新强>
基本上(并非总是)您的图像是分层的。 RGB是三个独立的层。因此,如果您的过滤没有意识到,那么您必须自己分离图层。
希望有所帮助。