sinotalent 发表于 2007-4-24 17:25

matlab web server应用遇到的问题,虚心求教!

本人利用matlab web server编写了一个远程图像处理的系统,具体是这样的:客户机发送图片给服务器,服务器对图片进行去噪、边缘检测等操作,最后把结果返回到客户机。但遇到了一个难题,客户机并不是什么图片都能传得过去,只有C盘下windows自带的一些示例图片才能应用,否则在客户端浏览器上会出现提示:matlab application error:imread('图片路径\图片名.jpg')does not exit.我尝试把能够处理的那几幅示例图片转移到其它文件夹,结果是不能处理,出现同样错误。
    输入HTML文件重点如下:
<form action="/cgi-bin/matweb.exe" method="get"target="outputwindow">
<input type="hidden" name="mlmfile" value="test2">   %test2为要调用的M文件
<input type="file" name="pic" >                                    %pic为输入图片的变量名
   

    M文件为:
function result=test2(Input)
cd(Input.mldir);
image=imread(Input.pic);
if (isfield(Input,'method'))   %判断是否为构架域
   meth = getfield(Input,'method');%getfield 获知构架数组的域
   if strcmp(meth, 'jiaoyan');
   I=imnoise(image,'salt & pepper');
   end
   if strcmp(meth, 'gaussian');
   I=imnoise(image,'gaussian',0,0.05);
   end
   if strcmp(meth, 'junheng');
   I=histeq(image);
   end
s.OutFile=sprintf('%spic.jpg',Input.mlid);
s.outstruct=sprintf('%simage.jpg',Input.mlid);
imwrite(I,s.OutFile,'jpg');
imwrite(image,s.outstruct,'jpg');
result=htmlrep(s,'out1.html');

请高手赐教,是不是image=imread(Input.pic);这句出了问题?还是其它?令我非常不解的是为什么windows自带的示例图片能够成功。谢谢!

eight 发表于 2007-4-24 18:18

原帖由 sinotalent 于 2007-4-24 17:25 发表 http://forum.vibunion.com/forum/images/common/back.gif
本人利用matlab web server编写了一个远程图像处理的系统,具体是这样的:客户机发送图片给服务器,服务器对图片进行去噪、边缘检测等操作,最后把结果返回到客户机。但遇到了一个难题,客户机并不是什么图片都 ...


把图片的完整路径传过去试试

sinotalent 发表于 2007-4-24 18:43

请问怎样把完整路径传过去?我是使用image=imread(Input.pic)来读入图片的。谢谢

eight 发表于 2007-4-24 18:50

原帖由 sinotalent 于 2007-4-24 18:43 发表 http://forum.vibunion.com/forum/images/common/back.gif
请问怎样把完整路径传过去?我是使用image=imread(Input.pic)来读入图片的。谢谢


自己测试一下你读取不到的图片的Input.pic值

sinotalent 发表于 2007-4-24 18:56

回复 #4 eight 的帖子

我的Q是271395660
能详细聊一下吗?谢谢

sinotalent 发表于 2007-4-26 09:17

没有人肯出手帮助?

sunnyboy501 发表于 2007-4-26 21:11

会不会是你的图片太大了啊??
页: [1]
查看完整版本: matlab web server应用遇到的问题,虚心求教!