我想将图像文件名作为参数从C#传递给MATLAB。这是我到目前为止所做的:
MATLAB代码
function out = trial(im)
O = imread(im);
G = rgb2gray(O);
imwrite(G,'output','jpeg');
out = G;
C#代码
private void btn_Browse_Click(object sender, EventArgs e)
{
openFileDialog1.ShowDialog();
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
pictureBox1.Image = new Bitmap(openFileDialog1.FileName);
}
}
当我浏览并选择一个图像文件( openFileDialog1.FileName )时,我想将它作为输入参数发送到MATLAB函数。我该怎么做?
答案 0 :(得分:2)
对于调用Matlab的外部程序,您必须使用Matlab引擎,它是Matlab套件的独立部分。无法创建C#应用程序并让它在Matlab的命令窗口中运行代码。
如何使用Matlab Engine is found here的说明(C和Fortran中给出的示例)。
然后,为了让你的应用程序运行你想要的代码,你可以选择直接在你的click事件中实现它,或者创建一个Method并从click事件中调用这个方法。