Matlab standalone executable deployment- error using phantom function
显示 更早的评论
Hey, I am working on matlab R2009A on ubuntu 11.04. Using the deploytool, I generated a test package for a matlab code of mine. Afterwards, I installed MCR using the command
sudo ./MCRInstaller.bin
which installed it at /opt/MATLAB/MATLAB_Compiler_Runtime/. Now to run the program, I extracted the package and then ran the file run_test.sh using command
./run_test.sh /opt/MATLAB/MATLAB_Compiler_Runtime/v710/ 10 128
where 10 and 128 are the arguments to the main function in the package. It gives me the error as
??? Error using ==> phantom>parse_inputs at 107
Unknown default phantom selected.
Error in ==> phantom at 69
Error in ==> MLEM at 3
Images:phantom:unknownPhantom
MLEM is my main program and at line 3, I have used the phantom function as
i = phantom(SIZE)
SIZE is an input argument(=128 in this case)
回答(3 个)
Titus Edelhofer
2012-5-4
Hi Sabya,
just a guess: you know that input parameters to standalone applications are always passed as strings? This can be handled e.g. by
function myfunction(x,y)
if ischar(x)
x = str2double(x);
end
if ischar(y)
y = str2double(y);
end
Or using isdeployed instead of ischar ...
Titus
3 个评论
Kaustubha Govind
2012-5-4
Ah! Great catch Titus!
Sabya
2012-5-5
Titus Edelhofer
2012-5-7
Hi Sabya,
where does the str2int function come from? Or did you mean str2double? What I sometimes do in these cases: I add after the first line a
save c:\temp\inputVariables
so that all input variables are saved. Then run the compiled application. Then load in MATLAB the variables
load c:\temp\inputVariables
and call your MATLAB function with just these variables to see what happens ...
Titus
Titus
Walter Roberson
2012-5-3
0 个投票
You cannot pass just a size to phantom(). The first parameter must be either a string or an array.
8 个评论
Sabya
2012-5-3
Sabya
2012-5-3
Kaustubha Govind
2012-5-4
Does it work with 128 as the input argument when run in MATLAB? The error is coming from phantom>parse_inputs, and is not a standard MATLAB error, so it's hard to tell what could be going wrong without looking at your code. Perhaps putting some DISP statements in phantom>parse_inputs will help with debugging.
Sabya
2012-5-4
Walter Roberson
2012-5-4
Passing only a size to phantom is not a documented syntax in R2009a.
http://www.mathworks.com/help/releases/R2009a/toolbox/images/index.html?/help/releases/R2009a/toolbox/images/phantom.html
Sabya
2012-5-5
Walter Roberson
2012-5-7
The R2009a documentation page is formatted differently than the current documentation page but contains the same information as the current (R2012a) documentation -- with no documented possibility of passing only a size.
If you insist on using undocumented behavior and your code fails, then we cannot be of assistance to you.
Titus Edelhofer
2012-5-7
Hi Walter,
don't know about R2009a, but in R2012a the doc contains the following "example":
% ph = phantom(256);
% figure, imshow(ph)
Titus
Elie nasr
2014-8-14
0 个投票
Hello there, anyone would provide me an MLEM algorithm for image reconstruction? Thank you
类别
在 帮助中心 和 File Exchange 中查找有关 Startup and Shutdown 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!