2

当我尝试使用 Matlab 的 jpeg 工具箱读取 jpeg 图像时,出现以下错误:

尝试将 SCRIPT jpeg_read 作为函数执行

虽然我不确定(因为我得到了工具箱和我应该运行的代码),但我相信所有必须编译的东西已经是。工具箱文件夹中的文件是:

vec2im.m
quantize.m
jpeg_write.mexmaci64
jpeg_write.mexmaci
jpeg_write.mexa64
jpeg_write.m
jpeg_write.dll
jpeg_write.c
jpeg_read.mexmaci64
jpeg_read.mexmaci
jpeg_read.mexa64
jpeg_read.m
jpeg_read.dll
jpeg_read.c
jpeg_qtable.m
im2vec.m
ibdct.m
dequantize.m
bdctmtx.m
bdct.m

版本为 1.4,与http://www.philsallee.com/jpegtbx/index.html中的相同。我已经将该文件夹添加到 Matlab 的路径中。对函数 jpeg_read 的调用如下:

jpeg_read(path_to_image)

我正在尝试在 Windows 7 64 下的 Matlab R2011a 上运行它。

提前致谢!

4

1 回答 1

1

您没有适用于 windows 的 mex 文件。您应该有一个已编译的库jpeg_read.mexw64以及jpeg_write.mexw64. 因为看起来你有源代码,所以你只需要在 Matlab 中编译它们:

>> mex -largeArrayDims -O jpeg_read.c
>> mex -largeArrayDims -O jpeg_write.c

在运行这些命令之前,请确保您有一个 mex 编译器设置:

>> mex -setup

我通常在 Windows 机器上使用 Visual Studio 编译器。

于 2012-12-18T12:27:30.340 回答