[aprssig] Packet Compressed Sensing Imaging (PCSI)

Scott Howard showard at nd.edu
Sun Jun 28 19:19:44 EDT 2020


Dear APRS SIG,

I'm happy to share a new image transfer method called PCSI that a team of
students and I have been developing during quarantine. PCSI is digital
(packet based), unconnected multicast (UI frames), compatible with APRS
(basically turbo-charged APRS Vision
https://www.tapr.org/pdf/DCC1997-APRSvision-WB4APR.pdf), resilient to
packet loss (every receiving station can receive a different random set of
packets and still reconstruct the entire image), and computationally
trivial for the transmitter (8-bit microcontroller can easily construct
packets). The goal is to be used with low-power microcontrollers and weak
signals (even HF modes) transmitting images when packets will likely be
lost. In SSTV and other unconnected digital image modes like SSDV, if the
signal is weak or packets are lost, entire sections of the image are
distorted or missing. In PCSI, if packets are lost, you still receive the
entire image. Every additional packet received (in any order) simply
increases image quality. Images take between 1-4 minutes to come in using
1200 baud, which is on par with SSTV. It's all controlled with an easy GUI
where you just set your call sign, load your file, then click send.

I've used it to transmit images locally between a hamshield KISS system and
a kenwood TH-D72a, and between two direwolf systems acoustically through
speakers and microphones. Now it's ready for testing in the wild.
*Details and usage videos are here:*
https://maqifrnswa.github.io/PCSI/
*Windows and Linux binaries* (for TCP or serial port KISS devices) are
available here:
https://github.com/maqifrnswa/PCSI/releases/tag/v0.0.0 (It should work on
Macs too, I just don't have one to build binaries. If you're comfortable
with python on Mac, you can also just use the source code.)
*Python Source code (everything is open source)*:
https://github.com/maqifrnswa/PCSI

The method isn't necessarily tied to APRS and can be used over any band or
mode, but if you'd like to explore its use for tactical and timely image
transmission over APRS (basically the goal of APRS Vision), you can set it
to use base91 encoding, use the "{{V" info prefix, and use an appropriate
altnet. For now, I've been using the destination address PCSI to indicate
that these are PCSI packets.

Since this is a specialized group of experts, I'd appreciate any testing
and feedback you can give. It's kind of a fun mode - you start watching the
entire image come in over time, and as packets arrive, the image comes in
to focus. To transmit and receive, you just need any KISS
TNC/soundmodem/direwolf/etc. It might be a cool way to send low-res images
over lossy and weak HF channels when you don't want to spend bits on FEC
(although you could also put FEC on top of this method). Any feature
requests, advice, or tips are welcome as well.

Backstory: When CoVid-19 shut down universities, students weren't able to
continue lab based work. I came up with this project so that undergraduate
lab assistants could work remotely while supporting a new educational
initiative that my university is pursuing around students developing
technology for high altitude balloons. The results are like magic - even
receiving 20%-30% of the total bytes of the original image (i.e., 70-80%
packet loss) gives high quality images. And it's a good introduction for
students to the math behind compressed sensing imaging. There are also
other tricks under the hood, like the optional use of chroma compression to
increase speed.

Cheers and thanks!
Scott

-- 


*Scott Howard, PhD*
*Associate Professor*
Department of Electrical Engineering
University of Notre Dame
http://ee.nd.edu

574-631-2570 (direct)
574-631-4393 (fax)

h <http://www.nd.edu/~showard>ttps://howardphotonics.nd.edu
Follow me on Twitter @HowardPhotonics <https://twitter.com/HowardPhotonics>

262 Fitzpatrick Hall
Notre Dame, IN 46556
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.tapr.org/pipermail/aprssig_lists.tapr.org/attachments/20200628/2c387a83/attachment.html>


More information about the aprssig mailing list