当前位置:编程学习 > C#/ASP.NET >>

vb.net与matlab混合图像处理编程

在vb.net中利用OpenFileDialog1打开图片并显示在picturebox1当中,我想利用显示出来的图片作为matlab函数中的输入量,但运行时一直报错“Data conversion error: Unable to copy array data from object”
  vb.NET中的打开图片的程序如下:(这个没错)
    OpenFileDialog1.FileName = "" '为了使图像对话框打开后没选择图片关了后,仍可以显示对话框,并且不报错
        OpenFileDialog1.ShowDialog()
        If (OpenFileDialog1.FileName <> "") Then
            PictureBox1.Image = Image.FromFile(OpenFileDialog1.FileName) 
            pic1 = PictureBox1.Image
        End If


假设我要利用matlab的rgb2gray函数把picturebox1中显示的图片变成灰度图像,怎么把picturebox1中的图片作为m函数的输入?(简单的m函数已编好了,并生成了dll,在vb中调用了) --------------------编程问答-------------------- 急啊,请高手帮忙 --------------------编程问答-------------------- matlab编译出来的DLL中函数的声明是什么?你是怎么调用的 --------------------编程问答-------------------- 我也弄过vb的东西 标记一下  --------------------编程问答-------------------- 检查数组数据 --------------------编程问答-------------------- 没用过matlab --------------------编程问答-------------------- 回复二楼    dll中的声明:
   Public hd1 As gray.grayclass
       hd1 = New gray.grayclass
        Call hd1.huidu(1, picout, pic1)


gray是我用matlab生成DLL时的prj,huidu是m文件名也就是m文件中的函数名 --------------------编程问答-------------------- 高手,求助啊!怎么没人回啊? --------------------编程问答--------------------
引用 6 楼 qianmutou 的回复:
回复二楼 dll中的声明:
  Public hd1 As gray.grayclass
  hd1 = New gray.grayclass
  Call hd1.huidu(1, picout, pic1)


gray是我用matlab生成DLL时的prj,huidu是m文件名也就是m文件中的函数名


重点是你没有说VB.NET编译器识别到的hd1.huidu方法的每一个参数是什么类型,你调用时分别传入的又是什么类型 --------------------编程问答-------------------- 恩,我知道是参数类型不对,hd1.huidu方法中输入的参数是.JPG格式的图片,上面输入的是pic1是 bmp格式的,现在问题是怎么把bmp格式的图像转换成jpg格式的图像,而不使用savefiledialog这个控件来实现,我不想通过对话框保存来实现,谢谢啊! --------------------编程问答-------------------- LZ可以手動將bmp格式的圖像轉換成jpg格式的圖像 --------------------编程问答-------------------- 手动是可以哦,我就是想通过程序转换
补充:.NET技术 ,  VB.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,