Linux 用Mathematica进行图像处理
我在之后创建了这个主题。我无法运行以下代码(由@belisarius编写): 以下是错误列表:Linux 用Mathematica进行图像处理,linux,wolfram-mathematica,Linux,Wolfram Mathematica,我在之后创建了这个主题。我无法运行以下代码(由@belisarius编写): 以下是错误列表: ArrayPad::depth: Padding amount {{40,0},{40},{0}} should specify padding in no more than the number of dimensions in array {{1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.
ArrayPad::depth: Padding amount {{40,0},{40},{0}} should specify padding in no more than the number of dimensions in array {{1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,0.996078,0.984314,<<142>>},<<49>>,<<145>>}. >>
Image::imgarray: The specified argument ArrayPad[{{1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,0.996078,0.984314,<<142>>},<<49>>,<<145>>},{{40,0},{40},{0}},{1,1,1}] should be an array of rank 2 or 3 with machine-sized numbers. >>
ImageForwardTransformation::imginv: Expecting an image or graphics instead of Image[ArrayPad[{{1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,1.,0.996078,0.984314,<<142>>},<<49>>,<<145>>},{<<1>>},{1,1,1}]]. >>
General::stop: Further output of ImageForwardTransformation::imginv will be suppressed during this calculation. >>
Rasterize::bigraster: Not enough memory available to rasterize ImageForwardTransformation expression. >>
General::stop: Further output of Rasterize::bigraster will be suppressed during this calculation. >>
ArrayPad::depth:Padding amount{{40,0},{40},{0}应指定不超过数组{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
imgarray:指定的参数ArrayPad[{{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
ImageForwardTransformation::imginv:期望图像或图形代替图像[ArrayPad[{{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
常规::停止:在此计算期间,ImageForwardTransformation::imginv的进一步输出将被抑制。>>
光栅化::bigraster:内存不足,无法光栅化ImageForwardTransformation表达式。>>
常规::停止:在此计算过程中,光栅化::bigraster的进一步输出将被抑制。>>
我正在Linux下使用Mathematica 8。我想我明白了
上面的代码是针对彩色图像(3个通道)的,您似乎试图在黑白图像(1个通道)上运行它
使用彩色图像或将第二行替换为:
b = Image@ArrayPad[ImageData@a, {{40, 0}, {40}}, 1];
以下是使用上述替换的图像的结果:
a = Binarize[Image["path/file.png"]]
b = Image@ArrayPad[ImageData@a, {{40, 0}, {40}}, 1];
我想我明白了
上面的代码是针对彩色图像(3个通道)的,您似乎试图在黑白图像(1个通道)上运行它
使用彩色图像或将第二行替换为:
b = Image@ArrayPad[ImageData@a, {{40, 0}, {40}}, 1];
以下是使用上述替换的图像的结果:
a = Binarize[Image["path/file.png"]]
b = Image@ArrayPad[ImageData@a, {{40, 0}, {40}}, 1];
我自己在windows上使用Mma,但我在Mma上的Linux上做了一次谷歌搜索,发现了这个。您可以尝试通过替换b=。。。在b=a的第二个命令中,让我们看看这是否是图像格式问题。我自己在windows上使用Mma,但我在Mma上的Linux上做了一个谷歌搜索,发现了这个问题。您可以尝试通过替换b=。。。在第二个命令中,使用b=a,让我们看看这是否是图像格式问题。