【发布时间】:2012-02-10 20:41:25
【问题描述】:
我在 Matlab 中实现了一个算法并部署为 .DLL
我的 C# 代码调用 .DLL 中的函数,因此生成了用于构建绘图的数据。我想让 matlab 代码从此绘图中创建一个 RGB 图像,并将该图像的原始字节发送到 C#。
任何人都可以发布一些代码吗?
我目前正在使用
构建情节$h = figure('visible', 'off');
plot(mydata);
print(h, '-r80', '-dbmp', file1);
由于磁盘 I/O 操作,我发现它的效率有点低(也许我错了?)。我宁愿将其转换为原始 RGB 数据并将生成的矩阵传递给 C#。我不知道该怎么做。我曾尝试在这样的虚拟图像上使用 ind2rgb:ind2rgb(spiral(5), colormap) 但这似乎没有提供整数 RGB 值。它们似乎仍然在本地颜色图中被索引。我也不知道如何在图形数据上使用 ind2rgb 函数(我不知道如何获取图形对象的图像数据)。
因此,如果有人愿意为我提供一种方法来获取与图形关联的原始图像字节(只有像素数据,没有标题)并将其转换为 RGB。我知道如何将其传递回 C#。
谢谢!
【问题讨论】:
-
是什么阻止了您在函数中返回代表图像的字节并保存到 c# 结构中?
-
我是 Matlab 的新手,我不知道如何做到这一点。我已经查过了,可以这么说,无法到达正确的地方来找到这些信息。正如我在上面指出的那样,我知道有一个函数 ind2rgb 可以将索引颜色转换为 RGB,但我不知道如何访问图形对象的实际图像数据。
标签: c# image matlab rgb figure