Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Arduino进行非常基本的图像处理_Arduino - Fatal编程技术网

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

使用Arduino进行非常基本的图像处理,arduino,Arduino,我正在考虑在Arduino上实现我为Android编写的算法。算法已经很基本了,但我仍然有很多方法来优化它。它可以归结为斑点的检测,一个单一的颜色通道就可以了。最重要的部分将是阈值和检测斑点(我还没有想到如何利用有限的资源,但这一点除外) 通过计算,Atmel芯片上的大多数指令只使用一个时钟周期。对于每秒30帧的320*240的图像,如果一个像素需要一个周期,我得出的最小时钟周期为2304000个。如果有一个8mhz的CPU,我最多可以有3.5个时钟周期,而16mhz的时钟周期是它的两倍。(如果

我正在考虑在Arduino上实现我为Android编写的算法。算法已经很基本了,但我仍然有很多方法来优化它。它可以归结为斑点的检测,一个单一的颜色通道就可以了。最重要的部分将是阈值和检测斑点(我还没有想到如何利用有限的资源,但这一点除外)

通过计算,Atmel芯片上的大多数指令只使用一个时钟周期。对于每秒30帧的320*240的图像,如果一个像素需要一个周期,我得出的最小时钟周期为2304000个。如果有一个8mhz的CPU,我最多可以有3.5个时钟周期,而16mhz的时钟周期是它的两倍。(如果之前在附近没有发现斑点,我可以跳过部分帧)

这似乎是可行的,但我猜还有比这更重要的事情要做。对我来说,输入似乎是最麻烦的;来自相机的模拟信号需要adc(在大多数Arduinos上限制为最大10000),但是我可以使用比较器来代替,并进行阈值模拟吗?如果有,是否有相关文件?另外,如果我通过中断接收到有效位,或者需要相等的时钟周期,这会有帮助吗? 或者我可以使用串行摄像头,但我想这需要更多的时钟周期。我也不能用比较器做阈值处理


有人能证实/评论我的想法吗?什么方法是可读的?

STM32似乎更适合图像处理。目前,我将继续使用Android,因为编写STM32似乎非常耗时。

7条指令非常少。例如,如果您只编写
mymatrix[row][col]++有1)从内存中获取行并将其放入寄存器。2) 从内存中获取col并将其放入寄存器。3) 将行数乘以列数。4) 添加行(相乘)和列5)将结果添加到mymatrix 6)从刚获得的内存单元中获取内容并求和(汇编指令只是一条获取和递增的指令)。7) 将内容写入存储单元。现在我不确定所有的步骤,但是它们应该非常接近实际的代码。现在,如果我们假设矩阵的元素总数少于256(例如64*8矩阵),那么这些就是7条汇编指令。仪表。1、2、3、6和7需要2个时钟周期,而4和5只需要1个。这意味着12个时钟周期只是为了增加矩阵中的一个值。我还没有考虑到你也应该在寄存器中存储列数。。无论如何,如果指令数量增加很多,如果使用16位寄存器而不是8位寄存器。所以在我看来,不,这对我来说似乎不可行。就拿一个更快的uC来说吧(ST有便宜的-啊,我明白了,谢谢你的回答。我刚刚发现STM32(Cortex M3)似乎很受欢迎而且便宜,这就足够了吗?有更好的替代品吗?嗯,我在这个领域不是很专业。我只知道我买了一个比arduino便宜(不到10欧元)的核仁F446RE唯一的“问题”是它与arduino代码不兼容(你不会有像DigitalWrite这样的arduino通用函数).也就是说,我不知道它是否足够。如果你能写非常简单的代码,也许你可以..模拟前端是这里真正的问题,但也许使用比较器你可以解决这个问题..否则使用(外部)闪存ADC,或者更好的数码相机(比如SPI接口)