搜索
bottom↓
回复: 81

关于单片机和图像的一个想法问题???

[复制链接]

出0入0汤圆

发表于 2007-11-14 15:29:03 | 显示全部楼层 |阅读模式
最近有朋友提出了一个想法 就是利用摄像头 和单片机做一个监控;简单说就是 摄像头采集数据,然后通过 不同时间 比较采集的数据;判断监控对象是否有了变化。
      只使用设想头采集的前期数据,采到的数据直接 传递到 mcu ;然后作判断。

不知道这种想法能实现吗?这种图像的识别模式 能行的通吗?

本人不是很了解图像处理,所以希望各位朋友给 提点提点!!谢谢了

出0入0汤圆

 楼主| 发表于 2007-11-14 15:36:24 | 显示全部楼层
只通过 一个手机摄像头 和 mcu  能实现这种 功能吗?

出0入0汤圆

发表于 2007-11-14 15:41:14 | 显示全部楼层
应该可以~但射象头的数据可以很快的,MCU要很快才可以处理完~
但如果只是要某个时间的数据,其他时间的数据舍弃.比如每10秒的那一帧的数据,把数据放到数组里~在过10秒得到另一帧数据,放入另一个数组,然后两个数组进行比较,依次类推,应该就可以判断了,且对MCU要求不高~,不过MCU至少每收到的一帧数据都要保存完整,不能丢数据,要我是这么想的,没做过,不知道对不对~

出0入0汤圆

发表于 2007-11-14 15:42:42 | 显示全部楼层
对图像技术不懂,

可是如果用单片机采样来的数据量是不是很大啊,够放的吗?难道还另外扩展ram?

说错了话,大家别介意啊!

出0入0汤圆

发表于 2007-11-14 15:47:50 | 显示全部楼层
我觉的从射象头采集到的数据,和发数据给TFT,都是一样的~应该都是颜色的数据点~数据的大小应该由射象头的分辨率和象素来定~

出0入0汤圆

 楼主| 发表于 2007-11-14 15:51:01 | 显示全部楼层
就是对图像不太清楚;我就是感觉这样子不行;但是说不出个所以然来。
数据量肯定不少,估计还得外挂存储器

但是 采集完的数据 能这个样子就用吗?图像不是还有彩色的吗?越想越乱。

出0入0汤圆

 楼主| 发表于 2007-11-14 15:53:33 | 显示全部楼层
还有这个数据比较;怎么样比较?用什么方法比较? 直接相减?
真是搞不懂了,这家伙想法是想 绕过上层处理那一块,直接数据处理?

这样能行吗?

出0入0汤圆

发表于 2007-11-14 16:04:46 | 显示全部楼层
处理图像要摄取图像特征值的来比较就可以了,这样就涉及到了图像处理算法问题,一幅图像也就1、2百字节,想对全副图像来比较时不现实的

出0入0汤圆

 楼主| 发表于 2007-11-14 16:21:24 | 显示全部楼层
哇 楼上的哥们,你可救了我了,能详细的说说吗?

这个所谓的特征 是什么?怎样计算?

能多说点吗? 给我留下您的联系方式也行啊,谢谢了

出0入0汤圆

 楼主| 发表于 2007-11-14 16:29:21 | 显示全部楼层
就算是1,2百字节 数据量也不算少,还要加上算法,这个算法是保密的吗?这种图像的处理一般的过程是怎么样的那?

出0入0汤圆

发表于 2007-11-14 16:46:44 | 显示全部楼层
加ram是必须的了,特征就是:比如人脸识别,那些能唯一辨别人脸的部位(像素点)就是所谓的特征值,我只是在学校里研究过这方面的东西,现在也在用这方面的东西,所以了解一些,算法我也没有,现在的图像识别算法都是针对某一类特定图像来处理的,向你那种广义图像识别只有全副图像处理了。我这儿有一些大学里玩的图像处理算法,像图像灰度、滤波等处理,你如果有兴趣的话,我可以给你找找看!

出0入0汤圆

 楼主| 发表于 2007-11-14 16:54:28 | 显示全部楼层
先谢谢 您了。哥们把这个东西 突然的 扔给我,弄得我很难受,根本不知道 如何下手;

您能给我 些资料 太好了。

我的邮箱 fire4047@163.com

顺便问一下:这个所谓的特征提取,是不是应该基于 先把一幅完整的图像帧保存下来,例如(640*480)的图像,然后根据所保存的640*480 bit 的数据 结合某种算法,来计算特征值???

目前的图像处理有别的 更简单的方法吗?在不需要太精确的 处理的前提下。谢谢了阿

出0入0汤圆

 楼主| 发表于 2007-11-14 16:57:07 | 显示全部楼层
另外一个弱问题,如果加 ram, 应该加什么型号的器件? 麻烦给指点一下。谢谢

出0入0汤圆

发表于 2007-11-14 17:17:21 | 显示全部楼层
"这个所谓的特征提取,是不是应该基于 先把一幅完整的图像帧保存下来,例如(640*480)的图像,然后根据所保存的640*480 bit 的数据 结合某种算法,来计算特征值" 是完全正确的,他们都用dsp or arm 做的,用8位机估计很难,我的资料是pc版的,希望能对你有些用处!

出0入0汤圆

发表于 2007-11-14 17:35:13 | 显示全部楼层
给你发了,用的是vc 6.0

出0入0汤圆

发表于 2007-11-14 22:38:50 | 显示全部楼层
找特征值这本来就是单片机计算能力所不能完成的,呵呵。如果图象要求不严格的话可以把图象模糊一下,减少样点,减小分辨率等来压缩大小,算法方面参考MPEG压缩,它里面有运动图象评估等。不过我觉得两个图象的数据做卷积也许可以解决问题。
我也是菜鸟,还请高手出来讲一下课,呵呵。

出0入0汤圆

 楼主| 发表于 2007-11-15 09:56:44 | 显示全部楼层
先谢谢各位;尤其是futter兄。
楼上所说,对我这个不认识图像的人确实很有帮助。我也估计用八位单片机 很难实现。

但是 不知道楼上说的 “广义图像识别只有全副图像处理了”。如果要这要处理的话 一般都用什么办法那?能有好办法吗?

我也大概查了一些资料;发现 几乎没有基于单片机的,即使有 也是“基于单片机的全数字图像的实时采集”根本就没有涉及到比较。

单片机本来运算就慢,在如果得到图像压缩 解码的话 估计时间就更长了;好像如果用单片机计算特征值 也很难实现吧。本来这个哥们的想法就是;绕过对图像的上层处理,仅在底层做些简单的运算,如果提取特征或计算就又回到上层了,最好就是得到数据紧接着一个简单算法,然后判断。否则好像就背离了这家伙的初衷。真是好象走死了。  

不过楼上哥们,你的那个“卷积”,能详细说一下吗?
就目前单片机的情况,各位看看 能实现这个要求吗?有这种可能性吗?谢谢

出0入0汤圆

发表于 2007-11-15 10:22:35 | 显示全部楼层
现在的图像处理一般步骤:提取原始图像---〉灰度---〉滤波/边缘检测/分割---〉提取特征值
上述步骤为对某一类特定图像的处理,比如人脸识别、指纹识别、车牌识别等等,你采集图像可能是彩色的,而这样的图像色素太多,如果你的图像背景稍微一变化,你的图像就没法处理了,所以图像一般要先灰度,或便成二值图像,灰度完之后,就要滤波,也就是把你要处理的特定图像外的背景去掉,然后才是对你要研究的图像进行算法处理,提取特征值。
    想你这种不适对某一特定图像进行处理的,只有把原始图像---〉缩小像素点---〉灰度---〉图像处理
    不过在图像处理一步你可以做些手脚:如只是边缘检测,然后只是比较图像轮廓就可以了,其实这也是变相的提取特征值

出0入0汤圆

发表于 2007-11-15 10:31:24 | 显示全部楼层
如果lz能用一般的8位机做出来,效果不错的话,哪怕是针对特定图像的。你可以去申请专利了,肯定有市场。

出0入0汤圆

 楼主| 发表于 2007-11-15 10:37:21 | 显示全部楼层
多谢楼上:
    如果弄这个东西,不用彩色的;只要 黑白就可以了,而且 我咨询了摄像头的厂家;他们说 灰度 可以不管,他们说 他们摄像头采集以后的数据 直接通过某种协议 和单片机联机 就可以了,而且每秒钟帧数可以设定。

     不过我不明白:这些数据那些是有用的?如何根据他的那些采集数据来进行判断 前后两帧的图像是否有差异那?这里应该有一个算法问题吧。在只需要得到是否一样的前提下,如何能够简单的得出比较结果那?

    我大概算一下 即使使用320*240的分辨率,数据量 也在9600字节 ;即使采样十分之一 也要960字节;这样的数据量 单片机能够处理吗?

出0入0汤圆

发表于 2007-11-15 10:38:43 | 显示全部楼层
对特定图像的核心是算法,设计仅是工具而已!

出0入0汤圆

 楼主| 发表于 2007-11-15 10:38:43 | 显示全部楼层
这东西 能有戏吗?

出0入0汤圆

发表于 2007-11-15 11:01:04 | 显示全部楼层
摄像头传输数据肯定是按照图像像素某一固定顺序传输的,而且他的协议里也肯定在一幅图像的前后有起始停止协议的,而前后两幅图像是否有差异,那就要看你的现实景物是否有变动了,所以这些你可以放心。但是单片机来处理图像,我是觉得不可行的!

出0入0汤圆

 楼主| 发表于 2007-11-15 11:01:40 | 显示全部楼层
futter兄:你说的太对了。我觉得如果让专门学习 图像处理的人来做这个,可能比我们来做要容易的多了。

起码人家知道图像的本质,知道大概的思路。我这对图像一窍不通的 太难了阿。

能给指点一条明路吗?哪怕说不可能让我死心也好啊。

出0入0汤圆

 楼主| 发表于 2007-11-15 11:05:06 | 显示全部楼层
如果有变动的话;应该能从收到的前后两帧的数据里看出来对吧。

这种“看出来”应该就是如何比较的问题了,这种比较 能有简单的方法吗?将前后两帧的数据相减 看是否一致 ,这样是否可行?谢谢

出0入0汤圆

发表于 2007-11-15 11:18:22 | 显示全部楼层
对,首先你要自己设计一套算法(那怕很简单的),比如你可以先存取一幅模板,以后的都与模板比较,在两幅图像比较时检测到变动的像素时,再以此像素前后上下引索检测,这儿你可以设定几个像素不一样为变动(阀值),这种算法你自己是能设计出来的,如果位图大于2,也就是不是二值图像,你还要在比较每个像素点时设一个阀值,这样算法应该可以凑或过去!

出0入0汤圆

 楼主| 发表于 2007-11-15 11:45:59 | 显示全部楼层
对,你这个思路太好了,我想一般摄像头的图应该就是二值图;那样,就只剩下算法、和数据量的问题了。

我想将所有的数据按平面分布;然后每隔一定的像素数 取出一个点,这个点可以代表一定数量的 附近的点;

如果这个点变化,则代表附近的像素都有变化;这样应该能简化以下算法同时也能 降低一定的数据量。

就是不知道这样的采样应该达到什么程度?例如:如果320*240的图 一共76800个点;那么取多少才能基本代表这一副图的所有?

目前我只想到这一步,至于下面如何处理 还没想法。

我这种方法是不是太笨了。呵呵呵 不好意思 谢谢!

出0入0汤圆

 楼主| 发表于 2007-11-15 12:42:35 | 显示全部楼层
这个想法能行的通吗?
头像被屏蔽

出0入0汤圆

发表于 2007-11-15 12:52:05 | 显示全部楼层
这个讨论比较有参考价值。置成COOL贴。 欢迎其它高手加入更有价值的资料。

出0入0汤圆

发表于 2007-11-15 13:04:27 | 显示全部楼层
这个算法好复杂,MCU的资源不够用。别浪费时间了。

出0入0汤圆

 楼主| 发表于 2007-11-15 13:07:34 | 显示全部楼层
各位仁兄,和edesigner兄: 你们看以现有的mcu的资源来看;这个数据量 压缩到多少 才有可能实现?

出0入0汤圆

发表于 2007-11-15 13:16:52 | 显示全部楼层
有没有usb摄像头的通信协议啊,有的上个啊。

出0入0汤圆

发表于 2007-11-15 13:39:52 | 显示全部楼层
这个算法已经是很简单的了,加上神经网络及模式识别那才复杂呢,以现在的pc机,一个算法得运行几天

出0入0汤圆

发表于 2007-11-15 13:40:29 | 显示全部楼层
压缩了,你能解得开吗。
建议用DSP,至少是ARM,别浪费时间了。

出0入0汤圆

发表于 2007-11-15 13:46:08 | 显示全部楼层
我看  LZ的最终目的是要做监控系统,估计是类似防盗的东西,
那为什么一定要 单片机 + 摄像头,
这么做是不是把问题复杂化?
是不是可以才取 单片机 + 几个传感器 的方案?
我觉得可行性很高,而且现在市场上已经有类似的产品
可以达到LZ的最终目的

不知道LZ为什么一定要  单片机 + 摄像头  ??????????????
( 采用摄像头 就必须引入图像识别,大量计算)

出0入0汤圆

 楼主| 发表于 2007-11-15 14:22:58 | 显示全部楼层
传感器的方法 我那个朋友提过,目前有的 红外,震动,温度,等等好像都不是十分的实用;至于这个想法,据说是他见过国外的一个类似的产品,但是那个产品要复杂的多。

他想简化一下,最终成品的大小 他考虑是一个烟盒的大小,由于实际的应用,它不需要十分的精确,所以考虑用手机的摄像头+mcu。

目前看来 得到数据 这一步可行,就是进一步的处理、判断数据非常的不好办。

市面上的类似的监控 好像都是基于操作系统的,很大,也很复杂。我原来也认为不可行,可是他觉得应该可以,我又没有十足的理由说服他,所以跑上来 找各位给看看。

照目前来看,就是数据的处理,图像的算法这关过不去 对吧?

出0入0汤圆

发表于 2007-11-15 14:26:01 | 显示全部楼层
用arm吧,或者做双CPU可能可以

出0入0汤圆

 楼主| 发表于 2007-11-15 14:26:39 | 显示全部楼层
如果这个东西的算法 不能在几兆的总线下,在1--2秒的时间内解决(最多5秒),我想就没有什么太大的意义了吧?

以现在的mcu速度,这样的目的能够达到吗?

如果真的像futter兄所说,需要pc机,甚至长时间来运算的话,我就干脆不再想这个了。

谢谢各位

出0入0汤圆

 楼主| 发表于 2007-11-15 14:31:29 | 显示全部楼层
如果 就单就320*240的分辨率,加上采用某种算法,将数据量 减小到百分之一。

也就是最终处理768bit,96字节。

这样的计算量, 4m总线的mcu 能否 在短时间内完成?

这种方法是否可行那???

出0入0汤圆

发表于 2007-11-15 14:41:39 | 显示全部楼层
(我没搞过监控系统,仅仅说说自己想法)
我觉得你 要是用老方法(图像识别)的思路做这个,有点小马拉大车了,可能处理得了那些算法,但是时间长,就不可行了
         除非采用什么巧法,减少运算量,加快速度(就是说,仅采少量点,少量数据参与计算等),也许可行,但是我没实际做过,不敢肯定可行
这样做,是实现用摄像头+单片机的方案,但是实际效果不如传感器的好,现在的传感器,有人形传感器等,现在市场上的产品(小型的)大部分也都是基于这类红外传感器,声音传感器的,已经很成熟了,
当然,LZ的朋友就是像搞搞尝试,也未尝不可,
现在有很多小型产品,体积虽小,但里边可是很复杂的,不仅仅是一个单片机,有的内含ARM,DSP级的芯片啊
所以人家做得又小,技术上又能采用图像识别等

出0入0汤圆

 楼主| 发表于 2007-11-15 15:37:54 | 显示全部楼层
谢谢楼上,您所说的 “人形传感器” 现在有这个东西吗? 这个东西应用到实际了吗?不知道在哪里能买得到?

传感器的产品 误报率非常的高,像声音,温度,红外等;好像都是这样,我不知道 如果从这方面入手,能找到 合适的传感器,

是否就应该也能通过传感器的方法 得到 相似的功能。就是不知道you这样合适的传感器吗?

这个东西如果用arm或者 dsp的话,那么数据量的处理应该不是问题,但是,普通摄像头的内部元器件 能否支持这样快速的数据传递那?这也是个问题。

另外如果使用 arm或者dsp的话,那么开发的成本肯定大了,但是难度会怎么样哪?(没有用过arm 所以不知道)增大吗?

出0入0汤圆

 楼主| 发表于 2007-11-15 16:15:05 | 显示全部楼层
这个东西确实是个尝试。我不了解监控,所以不知道 一般效果的监控,图像分辨率应该多大才合适?

多大的分辨率才能满足一般效果的 小型 监控的需要???

有做过着方面东西的朋友给点建议好吗?

出0入0汤圆

发表于 2007-11-15 16:48:50 | 显示全部楼层
我说的人形传感器指的就是红外传感器

出0入0汤圆

 楼主| 发表于 2007-11-15 17:01:49 | 显示全部楼层
谢谢楼上,这种传感器和普通的红外传感器 有什么区别吗?

出0入0汤圆

发表于 2007-11-15 20:16:00 | 显示全部楼层
记忆中,42楼提到的红外热释电似乎是可以实现‘活体检测’的,而且是运动中的类似人的活体??

1、 先建议阿莫调查一下是否可以供应一批 手机摄像头 或者其他非USB接口的摄像头?
2、 涉及到图像处理这类运算密集型的应用,就不要往MCU这种偏控制的芯片上靠了,毕竟,现在ARM、DSP的价格都降到可以接受的程度了。

出0入0汤圆

发表于 2007-11-16 00:03:29 | 显示全部楼层
图像处理  这个好像很少用单片机吧    dsp是专门干这个的

出0入0汤圆

发表于 2007-11-16 01:08:10 | 显示全部楼层
TO:【43楼】 fire4047
这种传感器我没用过,但是我拆开过感应灯里面就是这样的传感器,还有防盗器等,一般都用这种传感器

出0入0汤圆

 楼主| 发表于 2007-11-16 10:18:34 | 显示全部楼层
如果传感器果真能够达到“活体检测”这个标准,那么一般的使用这种配件的报警器也好,监控器也好;对于小动物 例如老鼠之类的东西的误报率应该能够降低。(原来知道好多银行使用的报警器就是因为误报率太高,所以用了一段时间 都给拆了)

还有个问题,做过监控的朋友请指点一下;再不需要十分精确的一般的情况下,(例如只监视一辆车),那么多大的图像分辨率能够基本满足?谢谢

出0入0汤圆

 楼主| 发表于 2007-11-16 10:33:58 | 显示全部楼层
各位老兄:从摄像头得到的图形 是二值图吗?是简单的010101。。。。这样的形式吗?

我指的是摄像头刚采集到的,由摄像头自身产生的数据,还没有传到上位机 之前的数据模式。是这种简单的二值图吗???

出0入0汤圆

 楼主| 发表于 2007-11-16 13:09:11 | 显示全部楼层
感谢各位,有谁能提供点 有关摄像头的资料吗?十分感谢阿

fire4047@163.com

谢谢futter兄的资料,很有启发。再次感谢

出0入0汤圆

发表于 2007-11-16 14:03:41 | 显示全部楼层
图像是以位色来分的,如2位、4、8、16、24位图,2位图就是用两种颜色来表示图像,即不是白就是黑,这个颜色是用RGB来表示的,也就是红绿蓝三色通过加权运算的出的值,像二位图就是0、255这两个RGB值来表示黑白,其实你看图像的存储格式会发现,除了24位图(全彩),它里面会有个颜色板,给你找了一下,你看看:

出0入0汤圆

 楼主| 发表于 2007-11-16 14:23:26 | 显示全部楼层
谢谢 futter兄。

看来我把这个图像 想象的太简单了;完全不是那回事啊。

得从头看起了,头疼阿

出0入0汤圆

发表于 2007-11-16 14:29:28 | 显示全部楼层
呵呵,其实也没什么太难得,主要要静下心来研究:
   1、cdib是一个专门位图类
   2、LPBITMAPFILEHEADER、LPBITMAPINFOHEADER说白了就是两个结构体而已,慢慢来!

出0入0汤圆

 楼主| 发表于 2007-11-16 15:07:42 | 显示全部楼层
难得futter兄想的周到啊,我打算试试这个东西。

到时候有问题了,老兄您可不能看笑话阿,先谢谢了

出0入0汤圆

发表于 2007-11-16 16:00:24 | 显示全部楼层
如果光线稍微有变化,图像的数据肯定也不一样。

不如数据的比较,简单的算法处理通过cpld或者FPGA实现。这样节约MCu的处理。
不知这样可行?

出0入0汤圆

发表于 2007-11-16 16:12:36 | 显示全部楼层
如果是二值图像,光线稍微变化到没有多大影响,因为rgb〉127就是255,小于就是0,但我估计摄像头采集的图像不是二值的,最多是灰度图像,你可以查查

出0入0汤圆

发表于 2007-11-16 16:17:28 | 显示全部楼层
如果是二值的,可以有个很简单的方法,就是统计黑白像素的个数,你可以设个阀值,如果采集的图像黑白像素个数和模板的个数差值大于阀值,说明图像有变,这个应该对一般的监视效果不错,虽然它有bug

出0入0汤圆

 楼主| 发表于 2007-11-16 16:19:33 | 显示全部楼层
futter 兄;能简单说说 灰度图像吗?

他有什么特殊的地方?在显示上有什么值得注意的地方吗?

重点说说在数据处理上应该注意什么问题?谢谢

出0入0汤圆

发表于 2007-11-16 16:27:15 | 显示全部楼层
我觉得关键还是你检测精度的要求的问题。最简单的例子,朝向门口,可能是全白图象,由人进来马上变黑了,如果只要这个精度的话只需要一个象素的传感器可能都可以实现,当然红外热释电传感器就很合适了。如果你要对比两幅卫星图片差异,看有没有变化用以评估地质等差异、计算森林面积的话,你需要处理的就是很大象素的图象,对色度要求也就很高!
在这里,监视一副画面,320×240分辨率并且用灰度来处理,如果算法好的话也能达到很好的效果,但是单片机很难完成。但是你取少点象素(马塞克处理等),算法精简一些,可能也能很好地满足要求。

出0入0汤圆

 楼主| 发表于 2007-11-16 17:05:48 | 显示全部楼层
脑子里还是很不清楚,在想想吧。

出0入0汤圆

发表于 2007-11-16 17:21:09 | 显示全部楼层
灰度就是R、G、B三色都取同一值,如RGB(50、50、50),把一张不是灰度图象灰度,就是通过一个算法得出一个值gray,然后让R=G=B=gray.我给你的资料里用的算法是gray=int(0.3*float(r)+0.59*float(g)+0.11*float(b));每一个像素点都包含R、G、B这三个值,二值图像或灰度图象也是如此,只是灰度图象的RGB值是同一个值而已!

出0入16汤圆

发表于 2007-11-16 17:21:49 | 显示全部楼层
以前做监控系统的时候把这个功能叫做“移动侦测”,用电脑做的话准确程度和不是很高,8位是做不来的。也有人提出要做类似楼主的想法用MCU+CMOS摄像模块做成人体检测设备,因为人睡着不动的话那些红外或无线探头都检测不准。我自己做不来,谁做出来申请专利后请我吃饭呀,呵呵

出0入0汤圆

发表于 2007-11-16 19:38:24 | 显示全部楼层
如果只是为了判断两帧画面有没有变化可以计算两帧画面的欧式距离,这个距离跟图像的特征关系比较大,跟图像亮度关系不大。具体算法和代码GOOGLE上很多。

出0入0汤圆

发表于 2007-11-16 19:59:09 | 显示全部楼层
futter大侠,我也在考虑这方面,能否也发一分资料到我邮箱QMING51@126.COM,我也在思考这个问题,如果是移动检测8位单片机用cvbs信号(模拟信号)很容易做到,我做过这个实验.

出0入0汤圆

发表于 2007-11-17 07:51:42 | 显示全部楼层
to: spely 潮水的眼睛
    给你发了,希望对你有用!

出0入0汤圆

 楼主| 发表于 2007-11-17 09:57:18 | 显示全部楼层
“欧式距离”
在二维和三维空间中的欧式距离的就是两点之间的距离,二维的公式是
d = sqrt((x1-x2)^+(y1-y2)^)
三维的公式是
d=sqrt(x1-x2)^+(y1-y2)^+z1-z2)^)
推广到n维空间,欧式距离的公式是
d=sqrt( ∑(xi1-xi2)^ ) 这里i=1,2..n
xi1表示第一个点的第i维坐标,xi2表示第二个点的第i维坐标 ------------------------------------------

个人觉得 这个方法好像不太合适。

出0入0汤圆

 楼主| 发表于 2007-11-17 10:07:28 | 显示全部楼层
futter兄:
灰度就是R、G、B三色都取同一值,如RGB(50、50、50),把一张不是灰度图象灰度,就是通过一个算法得出一个值gray,然后让R=G=B=gray.我给你的资料里用的算法是gray=int(0.3*float(r)+0.59*float(g)+0.11*float(b));每一个像素点都包含R、G、B这三个值,二值图像或灰度图象也是如此,只是灰度图象的RGB值是同一个值而已! ----------------------------------------------

这个gray 就是最后起决定作用,或者说我们要用到的对这个像素的最终比较判断的根据对吗?

所有关于这个这个像素的变化比较等等判断 都是最后根据这个来的,我的理解对吗?

另:灰度就是 把原本RGB不是相同的值得图像,例如 RGB(10.20.30);通过计算gray,最后转换成RGB都相同的图像的过程对吗?
本例:RGB(20.20.20)

不知道我这个理解是不是正确的?恳请老兄指正。

出0入0汤圆

 楼主| 发表于 2007-11-17 10:16:35 | 显示全部楼层
在一幅图像中,例如 320*240的图像;如果用rgb图表示。

是否是将每一个象素 都表示成RGB(X,X,X)这样的形式????

如果变成这样的话,我是否能够认为 这一副图像的数据总量应该表示成::320*240*3。

即表示成 :像素总数 * 表示每个象素所用的字节数(在这里rgb是3个字节)。

可以这样理解吗?

出0入0汤圆

 楼主| 发表于 2007-11-17 12:40:42 | 显示全部楼层
如果是二值的,可以有个很简单的方法,就是统计黑白像素的个数,你可以设个阀值,如果采集的图像黑白像素个数和模板的个数差值大于阀值,说明图像有变,这个应该对一般的监视效果不错,虽然它有bug -------------------------------------------

老兄的这个想法我也有过,但是总感觉有点不对的地方,还说不上来,

二值图 应该就是二进制的数据了吧,例如320*240 应该就是这么多个像素;
每个象素对应一个1或0。这样数据会比rgb少不少啊。

我这么理解没有错吧????

出0入0汤圆

 楼主| 发表于 2007-11-17 17:05:53 | 显示全部楼层
在顶一顶,好让各位给指点一二

出0入0汤圆

发表于 2007-11-18 00:22:43 | 显示全部楼层
to spely 潮水的眼睛
可以讲讲“如果是移动检测8位单片机用cvbs信号(模拟信号)很容易做到,我做过这个实验.”?

出0入0汤圆

 楼主| 发表于 2007-11-18 14:17:26 | 显示全部楼层
关于二值图 应该就是二进制的数据了吧,例如320*240 应该就是这么多个像素;
每个象素对应一个1或0。这样数据会比rgb少不少啊。
----------------------------------------------------------这样的理解对吗

出0入0汤圆

发表于 2007-11-19 08:06:24 | 显示全部楼层
跟FUTTER讲的差不多,这是参考国外的(AVRCONTEST)里面的项目,你可以去看看

出0入4汤圆

发表于 2007-11-19 08:32:19 | 显示全部楼层
做这些东西非DSP不行

出0入0汤圆

 楼主| 发表于 2007-11-20 09:52:01 | 显示全部楼层
"做这些东西非DSP不行"

就是因为mcu的计算功能不强对吗?

出0入0汤圆

发表于 2007-11-22 11:52:16 | 显示全部楼层
http://www.hocooling.com/CPLDyudongjiance.htm
一种用CPLD实现视频信号运动检测的方法
lz可以参考一下。

出0入0汤圆

 楼主| 发表于 2007-11-22 12:12:09 | 显示全部楼层
这两天看了不少,了解了一些摄像头的功能和 原理;发现 确实是 mcu 性能跟不上;

数据量 运算量都是非常的大。

例如 如果用 raw rgb 格式;320*480的图像,最少需要 320*480*2B个字节。太多了 没法想

可是又不太甘心,烦啊

出0入0汤圆

 楼主| 发表于 2007-11-23 10:56:41 | 显示全部楼层
谢谢 75楼的 forever 兄;

这个东西 太及时了。虽然还没有看明白,但是很有启发。谢谢

出0入0汤圆

发表于 2007-12-5 17:42:36 | 显示全部楼层
这是各种监控系统都有的功能,MCU的运算能力确实跟不上。

出0入0汤圆

发表于 2007-12-6 12:42:13 | 显示全部楼层
考虑一下用altera的cyclone的ep2c系列的fpga,带硬件乘法器。适合大量数据运算。控制网络部分用arm。

出0入0汤圆

发表于 2007-12-6 16:57:16 | 显示全部楼层
學習,頂

出0入0汤圆

发表于 2007-12-6 23:29:18 | 显示全部楼层
楼主,我先泼下你的冷水,我当初就是因为你这个思路,现在任务重大。搞残了。
哈哈,单片机处理能力远远不足,外加器件合起来的成本,
还不如用个arm7+dsp ,
目前都是这样做的,
我是采用arm9内置dsp才实现这样的功能,当然你要实现的只是其中的一个小小
附加功能而已,但是不用arm别说硬件成本,单片机的软件开发成本比你用arm linux做要高得多。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-3 00:19

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表