【问题标题】:Does anyone know the amount of resources that a C program that handles 1080 x 1920 pixel images may require? [closed]有谁知道处理 1080 x 1920 像素图像的 C 程序可能需要多少资源? [关闭]
【发布时间】:2021-08-06 06:33:02
【问题描述】:

我正在开发一个项目,该项目包括从图像中提取文本,然后将它们放入 .txt 文件中,然后将该 .txt 转换为可由某些扬声器播放的 mp3。我的问题是,考虑到我希望它尽可能经济,我不知道哪种类型的微控制器能够执行所有这些任务。

【问题讨论】:

  • 这是在讨论文本文件、声音和图形同时。你能试着专注于一件特定的事情吗?
  • 未压缩的1080x1920像素图像的数据大小约为260KB(1位/像素)、2MB(8位/像素)、6MB(24位/像素)或8MB(32位/像素)。所需资源将取决于您要执行的过程。

标签: c iot hardware


【解决方案1】:

首先,你应该从你的计算器开始,输入数字看看你得到了什么。

例如,每像素 1 位的 1920 x 1080 像素图像大约是 253KB 的数据。

如果您要处理大型图像文件,微控制器将无法处理它。如果是这样的话,大多数微控制器的内存总和不到 1MB。以Raspberry Pi Pico 为例,它有 264KB 的内存,这是一个相当大的容量,几乎无法容纳这么大的位图图像。

您需要更强大的处理器。 Raspberry Pi 具有 2GB 以上的内存,可以处理以 24 位色深缩放的图像。每像素 1920 x 1080 x 3 字节大约是 5.9MB 的数据。在具有 >32MB 内存的系统上完全可以管理。

请记住,微控制器擅长执行简单的任务,例如驱动键盘、伺服电机、与传感器通信等,但不擅长进行密集处理。 Pico 的 CPU 运行频率为 133MHz,仅此而已。几瓦的功率只能完成这么多事情!

您将需要一个完整的 CPU 来进行图像处理,或者甚至更好地利用像 Pi 这样的系统上的 GPU 元素来更有效地执行此操作,这是微控制器永远不会包含的。

【讨论】:

  • 假设我必须批量生产这个项目,我肯定不能使用树莓,因为它会非常昂贵。在这种情况下可以做什么?
  • 定义“非常昂贵”。您在这里使用什么价格参数?请记住,Pi Zero 的售价为 6 美元,而且散装更便宜。这也只是使用 SOC 而不是微控制器的一个例子。您可以批发购买同等芯片并制作自己的电路板。
  • 请您解释一下您所说的批发芯片是什么意思?
  • 如果你能更好地定义你的目标,它会有所帮助。这是一次性的吗?这是您为大众市场开发的产品吗?你有硬件工程经验吗?你愿意学习吗?你能嵌入像 Pi Zero 这样的产品吗? 如果您愿意花时间学习,您可以批发采购 CPU 并组装自己的主板,但这比购买现有的解决方案(如 Zero)要多得多。
  • 我非常愿意学习。这不会是一个以实物形式呈现的项目,但我的老师要求我提出一个项目并确定成本以及我需要哪些电子材料。我希望它在理论上是一个大规模实施的项目,这就是我寻求大量降低成本的原因。
【解决方案2】:

对于这种类型的任务,我建议从一些过度的东西开始。您也许可以将它安装到一个小型低功耗微控制器中,但它可能不值得付出努力。按照各种 Raspberry Pi MCU 的顺序试一试。

【讨论】:

    猜你喜欢
    • 2023-03-26
    • 2013-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-24
    • 2011-02-28
    相关资源
    最近更新 更多