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
AutobiographerJul 16 '18
This user hasn’t posted yet.