in the language go wrote a system to translate an input image into its audio equivalent where none of the information is thrown away ... it parses the image at the pixel level starting in one corner and traversing a path using a Hilbert Curve to visit each pixel and record light intensity at each pixel ... now you have an array of light intensity values ... assign to one end of this array a low frequency within the human audible range ... give other end of array a very high frequency and give each array element inbetween a frequency inbetween ... synthesize an audio oscillator at each element at its given frequency and drive its amplitude by the light intensity at that element ... aggregate all those oscillators into a single raw audio curve in PCM format ... this is the audio output equivalent to the input image ... it performs the functional equivalent to an inverse Fourier Transform ... this half of the system is done
now instead of having an input image synthesize and output audio write a new golang server to implement the reverse of above system namely have this second server input audio to synthesize and output image
so first server does : imageA --> audioA second server does : audioB -> imageB
when I was able to tie those system together such that the audioA output of first server was used as input audioB of second server and the output imageB matched the original input imageA I knew the system worked ... I have this all working ... next step is to productionize this and make available to the blind ( it may allow the blind to see with their ears ) ... and visa versa for the deaf ... also looking into other uses
- Stack Overflow 22.5k 22.5k 1010 gold badges8080 silver badges8888 bronze badges
- Ask Ubuntu 11.1k 11.1k 77 gold badges4141 silver badges6262 bronze badges
- Unix & Linux 1.9k 1.9k 11 gold badge1919 silver badges1919 bronze badges
- DevOps 449 449 22 silver badges1010 bronze badges
- Super User 364 364 44 silver badges1212 bronze badges
- View network profile
Top network posts
- 656 "Cross origin requests are only supported for HTTP." error when loading a local file
- 348 Skipping acquire of configured file 'main/binary-i386/Packages' as repository 'xxx' doesn't support architecture 'i386'
- 209 Skipping acquire of configured file 'main/binary-i386/Packages' as repository 'xxx' doesn't support architecture 'i386'
- 207 docker login unknown shorthand flag: 'e'
- 76 E: Unable to locate package vim on Debian jessie simplified Docker container
- 50 How can I deactivate Bluetooth on system startup?
- View more network posts →