使用Arduino进行非常基本的图像处理



我正在考虑在Arduino上实现我为Android编写的算法。该算法已经非常基本,但我仍然有很多方法可以优化它。它归结为检测斑点,单个颜色通道可以正常工作。最重要的部分是阈值和检测 blob(我还没有想到如何处理有限的资源,但除此之外(。

计算一下,Atmel 芯片上的大多数指令只使用一个时钟周期。对于 320 fps 的 240*30 图像,如果一个像素需要一个周期,我至少会达到 2304000 个时钟周期。给定一个 8mhz CPU,我最多允许 3.5 个时钟周期,是 16mhz 的两倍(如果以前在附近没有发现斑点,我可以跳过部分帧(。

似乎是可行的,但我猜还有比这更多的东西在起作用。输入对我来说似乎是最麻烦的;来自相机的模拟信号需要一个ADC(在大多数Arduinos上限制为最大10000(,但我可以使用比较器来做阈值模拟吗?如果是这样,是否有这方面的文档?另外,如果我通过中断接收到大量位,或者需要等量的时钟周期,这会有所帮助吗?或者,我可以使用串行相机,但我想这需要更多的时钟周期。此外,我也无法使用比较器进行阈值设置。

有人可以验证/评论我对此的想法吗?哪些方法是可读的?

STM32似乎更适合图像处理。现在,我将坚持使用Android,因为对STM32进行编程似乎非常耗时。

最新更新