刚才终于把纠结了好久的一个关键问题解决了,从四月份正经开始做毕设到现在,感觉学了好多好杂的东西,像图像处理、matlab、MFC、ASP.NET、com组件、还有最痛苦的混合编程,其实写日志的目的,也就是想分享一下用com组件将matlab和vc6.0还有matlab和asp.net连接起来的经验,可能很简单,但是对于做图像处理的人应该是很有用的,
首先,想说为什么要采用混合编程,用vc做图像处理的同学应该都很清楚这个过程是多么痛苦,当然了,你的目标仅限于处理位图那就没有那么复杂了,可是面对N种图像格式的时候,这就需要特牛的技术了,要自己定义类和方法,来读入处理图片,我自认为我没那个高度,所以就取巧用matlab,发现它太强大了,随便告诉它你要干什么,它就帮你做了,但是matlab做界面的能力就不是很强,做网站的话,我还没听说过可以
所以我最开始的切入点就是怎么将这两个工具结合起来,由于开始的时候想学MFC,所以主要就是找一些能将matlab和vc6.0连接起来的方法,最后知道的方法有两种:一是matcom,再一个就是com组件的方法了,matcom给我的直观感觉就是将写好的matlab代码转换为C++的代码,然后通过在这段代码前后加入vc6.0提供的方法,让编译器识别这段代码,有兴趣的可以自己在网上查一下,个人不支持这个做法,代码看起来很复杂,很难懂,修改起来也不是很容易;推荐的是第二种方法,用com组件,很灵活的一种方式,如果你问我什么是com组件的话,我会很认真的告诉你我也不知道
上面说的是matlab和vc6.0的连接;当我用这个方法实现了我的算法之后,又突发奇想想做一个B/S的东西,顺便学一下asp.net,在学了一段asp之后,开始着手做我的系统,这样就涉及到了matlab和asp.net的连接了,出发点还是组件,而且这次调用组件比vc6.0那个简单多了,新建一个网站,添加一页,(我用的是VS2008)在网站那项下有一项添加引用,弹出的对话框中会列出本机中所有的动态链接库,选择你是先做好的动态链接库,这里就用到了你做组件时给出的类名了,在你要用到matlab的时候,只要将类添加到命名空间就可以了,之后就可以随心所欲了,呵呵!!!
这些问题是难为了我好久,让我郁闷了好久的问题,所以在不断尝试的时候,我就对自己说弄好之后,一定要把它记下来分享出去,一是方便有需要的人,更重要的是希望有牛人出现指点我一下,看是否有更好的方法,或者说其中的每一步都是为什么,因为我现在只是会做,可是并不知道为什么这样做可以
联系客服