Live data from Hacker News

SIMD-accelerated computer vision on a $2 microcontroller

shraiwi.github.io

41–50 of 60 posts

Re: SIMD-accelerated computer vision on a $2 microcontroller

#41

>For silicon that's cheaper than the average coffee, that's pretty cool. Maybe it's not the chip that it's too cheap. Maybe it's the coffee that's too expensive.

I wish but tbh coffee is probably artificially cheaper than it really should be since larger corporations exploit local farms and effectively maintain local monopolies where farms have to sell to said corporations for a fraction of the price it's actually worth.

Re: SIMD-accelerated computer vision on a $2 microcontroller

#42

A comparable board is the ESP32-CAM, which is supported by this really practical computer vision project: https://github.com/jomjol/AI-on-the-edge-device?tab=readme-o...

In the CV department, I recently ordered a cheap FPGA + ARM Cortex-M3 + 64 Mbit SRAM + 32 Mbit flash that does camera input and HDMI output. Like a budget Zynq for CV. https://wiki.sipeed.com/hardware/en/tang/Tang-Nano-4K/Nano-4... https://www.aliexpress.us/item/3256806880637138.html

I wish I had the time to tinker with these bad boys

Re: SIMD-accelerated computer vision on a $2 microcontroller

#43
post #4

> As I've been really interested in computer vision lately, I decided on writing a SIMD-accelerated implementation of the FAST feature detector for the ESP32-S3 [...] > In the end, I was able to improve the throughput of the FAST feature detector by about 220%, from 5.1MP/s to 11.2MP/s in my testing. This is well within the acceptable range of performance for realtime computer vision tasks, enabling the ESP32-S3 to e…

Thanks for reading! > What are some use cases for FAST? The FAST feature detector is an algorithm for finding regions of an image that are visually distinctive, which can be used as a first step in motion tracking and SLAM (simultaneous localization and mapping) algorithms typically seen in XR, robotics, etc. > Is there TPU-like functionality in anything in this price range of chips yet? I think that in the case of t…

SimSIMD https://github.com/ashvardanian/SimSIMD :

> Up to 200x Faster Inner Products and Vector Similarity — for Python, JavaScript, Rust, C, and Swift, supporting f64, f32, f16 real & complex, i8, and binary vectors using SIMD for both x86 AVX2 & AVX-512 and Arm NEON & SVE

github.com/topics/simd: https://github.com/topics/simd

https://news.ycombinator.com/item?id=37805810#37808036

Re: SIMD-accelerated computer vision on a $2 microcontroller

#44
post #24

Earlier quoted context omitted.

OTOH, I've been waiting for disposable coffee cups with OLED-based video ads ever since Minority Report. But tech progress is just too damn slow :P

I dunno about OLED, but now that you say it the costs do make some sort of "smart" coffee disturbingly plausible.

Based on the recent post about the disposable Montreal subway tickets with a super cheap nfc chip (and amusingly on a paper ticket with a a printed on fake smart chip connection) it should be super cheap to have an automated kiosk that pairs your drink order to a paper cup that when a barista swipes shows your cup your order shows up or fills it automatically.

https://www.righto.com/2024/06/montreal-mifare-ultralight-nf... (It was linked from here but i don't have the HN link)

Re: SIMD-accelerated computer vision on a $2 microcontroller

#45
post #34

If you're interested in this stuff and wanna try it yourself, check out our product, Edge Impulse: https://edgeimpulse.com/ai-practitioners We work directly with vendors to perform low level optimization of deep learning, computer vision, and DSP workloads for dozens of architectures of microcontrollers and CPUs, plus exotic accelerators (neuromorphic compute!) and edge GPUs. This includes ESP32: https://docs.edgeimp…

Why C++? Does the C++ code use any difficult C++ features or is it more C with classes?

Re: SIMD-accelerated computer vision on a $2 microcontroller

#46
post #7

Earlier quoted context omitted.

Neither Xtensa nor RISC-V are VLIW architectures.

Xtensa architecture is flexible and extendable by the user. Ability to define new instructions, hw features and VLIW configurations are some of the key features. You can find more details on the internet https://en.m.wikipedia.org/wiki/Tensilica

I don't think that applies to the ESP32 family of devices. I've never heard of DSP hardware onboard them.

I think the comment you're referring to is talking about the architecture in general, but not the silicon we're discussing here.

Re: SIMD-accelerated computer vision on a $2 microcontroller

#47
post #13

We prefer something more expensive and better: https://up-board.org/upsquared/specifications/ Intel UpSquared

More expensive sure. But better is pretty rich considering it is Intel. My money is on this platform just evaporating in the next 5 years. Esp32 has proven you can rely on supply and longevity.

Arguably the UP^2 is another class of device. Up to 8 GB of RAM and up to 128 GB of storage + a whole x86 CPU with dual gigabit LAN.

And the price, size and power consumption are also quite a bit higher but it will certainly grant a better general compute environment, if you want to run Linux or smth.

Re: SIMD-accelerated computer vision on a $2 microcontroller

#48
post #46

Earlier quoted context omitted.

Xtensa architecture is flexible and extendable by the user. Ability to define new instructions, hw features and VLIW configurations are some of the key features. You can find more details on the internet https://en.m.wikipedia.org/wiki/Tensilica

I don't think that applies to the ESP32 family of devices. I've never heard of DSP hardware onboard them. I think the comment you're referring to is talking about the architecture in general, but not the silicon we're discussing here.

ESP32 ee.* operations in assembly look pretty much like aliases for a VLIW bundles, on the same cycle issuing loads used in the next op while also doing multiplication on other operands. This is not a minimal Xtensa. They might not have the Tensilica toolchain for redistribution to use these features freely but apparently they exposed these extensions in their assembler in some form.
Post reply on HN