Decoding MeteorM2: QPSK, Viterbi, Reed Solomon and JPEG
Formal Metadata
Title 
Decoding MeteorM2: QPSK, Viterbi, Reed Solomon and JPEG

Subtitle 
from IQ coefficients to images, analysis of digital weather satellite transmissions

Title of Series  
Author 

License 
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. 
Identifiers 

Publisher 

Release Date 
2019

Language 
English

Content Metadata
Subject Area  
Abstract 
A low cost, digital video broadcastterrestrial (DVBT) receiver is used to collect radiofrequency signals emitted from the low Earth orbiting Russian satellite MeteorM2. The QPSK encoded signal is analyzed all the way from extracting bit values, to recovering the JPEG encoded image transmitted from the satellite. This investigation is an opportunity to experimentally assess all the layers of digital communication widely used from Deep Space communication to daily mobile phone communication, including Viterbi encoding, Reed Solomon error correction, and JPEG image display. Few members of the audience might have any interest in the details of Meteor M2 weather satellite transmissions. However, tackling the reception of this digital weather satellite opens the opportunity to address most if not all the layers of the OSI model, from the physical layer by collecting the radiofrequency signal using a costeffective DVBT receiver acting as a general purpose software defined radio signal source, to the data link layer with the various error correction schemes implemented to address the corruption introduced by the noisy radiofrequency communication channel (Viterbi, Reed Solomon) and the network layer with the frame encoding including telemetry and, of course, the payload as a digital picture. The latter is encoded in JPEG format, adding more abstractions with the lossy compression to be reverted to display greyscale images representative of the atmosphere and ground reflectivity in the various wavelengths monitored by Meteor M2. This decoding path matches most recent spaceborne signal transmissions, as documented by the Consultative Committee for Space Data Systems (CCSDS [1]), and despite extensive documentation available online, a practical demonstration of the various decoding steps helps understanding the many documents over which the information is spread.

Related Material
00:00
Metre
Satellite
Slide rule
Inheritance (objectoriented programming)
Computergenerated imagery
Mathematical analysis
Digital signal
Raw image format
Data transmission
Signal processing
Solomon (pianist)
Coefficient
Process (computing)
Software
Physicist
Maize
ViterbiAlgorithmus
Address space
01:22
Satellite
Spectrum (functional analysis)
Trajectory
Context awareness
Greatest element
Information management
Electric dipole moment
Chemical polarity
Polarization (waves)
Data transmission
Revision control
Analogy
Computer hardware
Celestial sphere
Circle
Noise (electronics)
Dialect
Satellite
Image resolution
Sine
Horizon
Coma Berenices
Element (mathematics)
Degree (graph theory)
Message passing
Frequency
03:30
Satellite
Email
Weight
Multiplication sign
Workstation <Musikinstrument>
Function (mathematics)
Disk readandwrite head
Computer font
Information technology consulting
Software bug
Set (mathematics)
Circle
Information
HTTP cookie
Physical system
Adventure game
Email
Logical constant
Trail
Sampling (statistics)
Bit
Control flow
Measurement
Degree (graph theory)
Software development kit
Message passing
Frequency
Sample (statistics)
Telecommunication
Website
Block (periodic table)
Task (computing)
Spacetime
Data compression
Metre
Slide rule
Trail
Patch (Unix)
Data recovery
Resampling (statistics)
Streaming media
Number
Power (physics)
Frequency
Telecommunication
Internetworking
Autocorrelation
Spacetime
Maß <Mathematik>
Module (mathematics)
Multiplication
Continuous function
Inclusion map
Database normalization
Radius
Loop (music)
Software
Radiofrequency identification
Synchronization
Charge carrier
Bus (computing)
Coefficient
Spectrum (functional analysis)
Local ring
Library (computing)
10:09
Convolution
Polynomial
Randomization
State of matter
Shift register
Codierung <Programmierung>
Multiplication sign
Function (mathematics)
Mereology
Data transmission
2 (number)
Database normalization
Exclusive or
Mathematics
Matrix (mathematics)
output
Physical system
Shift operator
Focus (optics)
Information
Expression
Bit
Term (mathematics)
Cartesian coordinate system
Convolution
Product (business)
Data stream
Function (mathematics)
Crosscorrelation
Physicist
output
Finitestate machine
Video game console
Coefficient
ViterbiAlgorithmus
12:21
Convolution
Interleaving
Bit
Function (mathematics)
Term (mathematics)
Virtual machine
Sequence
Database normalization
Error message
output
Finitestate machine
ViterbiAlgorithmus
Descriptive statistics
13:04
Point (geometry)
Convolution
State of matter
Branch (computer science)
Function (mathematics)
Streaming media
Mereology
2 (number)
Number
Sequence
Computer configuration
Synchronization
Feasibility study
Codierung <Programmierung>
Error message
Descriptive statistics
Convolutional code
Noise (electronics)
Algorithm
Validity (statistics)
Information
Bit error rate
Uniqueness quantification
Moment (mathematics)
Bit
Virtual machine
Word
Error message
ViterbiAlgorithmus
15:01
Satellite
Convolution
Meta element
Hoax
State of matter
Shift register
Source code
Set (mathematics)
Function (mathematics)
Streaming media
Mereology
Code
Rotation
Hypothesis
Mathematics
Crosscorrelation
Complex number
Synchronization
Authorization
output
Position operator
Normal distribution
Sound effect
Bit
Sequence
Symbol table
Degree (graph theory)
Symbol table
Word
Message passing
Process (computing)
Computer configuration
Crosscorrelation
Phase transition
Synchronization
output
LipschitzStetigkeit
Quicksort
Electronic visual display
ViterbiAlgorithmus
Convolutional code
18:37
Interleaving
Multiplication sign
Data recovery
Combinational logic
Maxima and minima
Rotation
Solomon (pianist)
Crosscorrelation
Synchronization
Computer worm
Codierung <Programmierung>
Extension (kinesiology)
Selforganization
Information
Block (periodic table)
Interleaving
Bit
Symbol table
Arithmetic mean
Word
Computer configuration
Error message
Personal digital assistant
Crosscorrelation
Telecommunication
Synchronization
Volumenvisualisierung
Block code
Block (periodic table)
Thetafunktion
20:51
Randomization
Hoax
Code
Matter wave
Multiplication sign
Set (mathematics)
Function (mathematics)
Parameter (computer programming)
Mereology
Huffman coding
Information
Curvature
Library (computing)
Geometric quantization
Thumbnail
Area
Email
Theory of relativity
Moment (mathematics)
Bit
Trigonometric functions
Sequence
Process (computing)
Computer science
Website
LipschitzStetigkeit
Pattern language
Block (periodic table)
Metre
Frame problem
Slide rule
Table (information)
Computer file
Consistency
Computergenerated imagery
Wave packet
2 (number)
Solomon (pianist)
Coefficient
Energy level
Codierung <Programmierung>
Address space
Initial value problem
Data type
Standard deviation
Multiplication
Information
Validity (statistics)
Discrete group
Line (geometry)
Frame problem
Geometric quantization
Synchronization
Coefficient
ViterbiAlgorithmus
Communications protocol
Computer worm
Singuläres Integral
26:23
Satellite
Web page
Point (geometry)
Presentation of a group
Freeware
Computer file
Multiplication sign
Computergenerated imagery
Frustration
Image registration
Wave packet
Web 2.0
Heegaard splitting
Coefficient
Blog
Telecommunication
Internetworking
Analogy
Spacetime
Process (computing)
Codierung <Programmierung>
Vorwärtsfehlerkorrektur
Standard deviation
Email
Satellite
Weight
Moment (mathematics)
Theory
Softwaredefined radio
Image registration
Repository (publishing)
Telecommunication
File archiver
Website
Coefficient
Communications protocol
Physical system
Spacetime
Data compression
29:52
Point cloud
00:05
okay thank you for being here for last
00:08
talk so this last talk would be about decoding meteor m2 so what I would like to emphasize is assume that most people in this room don't care at all about meter and to the topic here I would like to address is to use meter and to as a reason for addressing all these fascinating topics I should emphasize I'm trying to the physicist I never been taught about any of these things here so I discovered everything by myself I found it very fascinating to be discovering all these super processing techniques that you find in the various documentation about digital communication I want to show you how getting from the raw data QPSK overweight or JPEG image as you can see here will be addressed in this talk so barton did not care to give you a talk with two semester of signal processing in 20 minutes I do so also I should emphasize if you just want to get the image you can go out of room because this metal decoder is doing a much better job at what I'm going to show you this is working very well I want to go step by step into what is going here so really for me the topic is understanding all these things not using a readily available software so that's the topic of talk so I'm lucky enough to be going
01:25
every twice every week twice every year in Arctic regions for glacier monitoring and so I'm lucky enough to be following all these polar orbiting satellites so low Earth poor orbiting weather satellites including amongst the various little satellites the one from version material so why are Arctic regions most favorable for this night of monitoring when you have a solar synchronous satellites there will be in the polar orbit 98 degree so 90 degree would be right over North Pole and one of these polar orbiting satellites here I've plotted the trajectory over one day you see that when you're in Western Europe here it's been on swing friends the the green circle is the place you would be if you wanted to see the sunlight or horizon this is at an altitude of elevation of 15 degree this is at elevation of 60 degree below which I don't even bother to take my antenna out in France you will get at most one pass every day of one of these / orbiting satellites while when you go to an Arctic region where you've got all these passes so it's fascinating because when you're learning to decode a new satellite here you have like 10 10 12 passes per day while here you have one at best so I'm investigating metal rim 2 in this context and also using the little RTL SDR receivers because of course when you go where you're not supposed to take a big bag with full of a hardware it's not related to your research so here I can just put one of these little receivers at the bottom of my backpack just find any two wires to make a dipole until I want to arrive there and you'll have your setter for receiving metal m2 so I'm sure many of
03:05
you here in the room have already listened to new AAA so the noise satellites are a dying breed because no AAA is no longer renewing their constellation of analog satellites they started in the 70s now they are at midmay no a 19 a finger to switch will go up to 21 and then we'll stop NOAA so now we have to think about the future and the future is digital communication so digital communication is what is
03:30
provided by CC STS so because the last people could not say it is consultative committee for space data systems and this is basically a body trying to standardize this communication so that's a bit of a layout of what I want to talk so when Bastion was showing you I have my JPEG picture then I have tcp/ip when I have TCP will have IP you've got all your og layers and of course when you want to decode the JPEG image on Firefox well you've got all these libraries for you and for me the exploration here was I collect this QPSK data at the output of new radio either running the RTL is your data C stream and then how do you go from this QPSK all the way to the JPEG image so for me it's a little bit like if you were trying to listen to a JPEG image being transmitted in HTML with just no zero scope connected to your internet cables and for me it's an adventure to try to get the layers one after vehicle so of course it's so you claim to be going in detail I would like to show you the outline slides will be available on the website and I hope it will make you curious about getting into all this story now you might be wondering people have been working happily with NOAA so why even bother with such a complex networking so this is a talk I saw when I was at Huntsville at Marshall Space Center from Dave Israel at the White Sea conference where he was showing you've got the International Space Station the International Space Station is flying at 400 kilometer altitude and is visible if you remember my little circles on the radius of 1500 kilometers so this means you would need to put one station every 1,500 kilometres along the path so this is what the Americans did for Gemini and Mercury they had one ship or one station every 1500 kilometers but there's no problem because they only did one or two orbit so you just needed to put a few stations along the orbit ISS is rotating of course you cannot put one station every 1500 meter all over the earth so what is happening now is ISS is completely automated the astronauts are running the experiments but everything on the ISS is automated from ground stations and the ISS is only visible from a radius of 1500 kilometers realice says he's not directly talking to the earth but he's talking through the tracking and data relay system the TDRs satellites the geostationary satellites so I assess 400 kilometers rotating quite quickly talk to TDRs TDRs are talking with each other and TDRs is sending ceylon back to earth same is true for Hubble Hubble Space Telescope is very expensive you don't want to just run it as it is flying over your head you want to continuously monitor Hubble Space Telescope measurements and of course you don't think that the US Air Force cares much about the science in Hubble Space Telescope but once you figure out that Hubble it's just a spy satellite upside down you might figure out why you had TDRs here in the space so of course here you have multiple satellites with multiple multiple experiments so you need a way of PACA tiling your data you need to say it's satellite number X which is sending data from instrument number Y and how you do this well that's where you go from QPSK which would be your Ethernet cable all the way to the JPEG image through all the layers of all the layer ok let's try to have fun with your layers so first of all we need to predict where
06:49
Metro is flying I still use a track despite the y2k bug which is a silly patch and is not inserted you can use wh three to IMG in the paper I explained to you how you can cheat WX to IMG which is no longer maintained into a thinking that one of the neue satellites is actually maturing to and so that you can meter onto is actually one of the NOAA satellites so you can use a WX to energy and if you have internet access you can use the heavens above website again the beautiful thing about being it Spitsbergen arctic region 79 degree north is you've got all these passes at high elevations which of course you don't get in the western in a Western European country lower latitude country you'll get one two passes is best okay so we know when no major m2 is flying so we take our rtlsdr rtlsdr we collect the data this is all stolen from the earth spy website for receiving measure I'm too rational resampler you have your clocking so you cost us loop which locks on the frequency offset between the carrier and locals later beach recovery and so that data clock recovery and at the end you got your soft soft bits so already I needed to learn the first world when I was doing this I didn't know what the soft so soft bait is IQ coefficients where you're in one and zero are not yet saturated but are still represented here by an 8bit value and you still need to identify whoever it is most probably a one or a zero so I didn't know what soft pit meant so the first question is are my data even worth investigating so this is a spectrum unlike GPS now we have strong signals so you see there is something happening here is it the QPSK signal well if we expand what Paul Bob and totals about GPS where BPSK is collapsed vo by squaring the signal well of course if you take the nth power of an NP SK signal you collapse again the the spectrum spreading YouTube PSK modulation so here we take our raw signal well there is something but we don't know if it's the right modulation we square it it is not BPSK so we haven't colored fulfill the spectrum we raised to the fourth power it QPSK because your spectrum spreading has collapsed in the carrier so we can get a signal that are worth investigating further it seems to be QPSK modulation so once we've done this if we know it's a packet I'll System packetized system means something will be repeated if you look at the documentation you will find that all cccc SDS compliant communication start with a header well we say if you have packets you need to know where the packet starts and the packet start header is 1a c FF c 1d try to remember this because i will keep on repeating this sentence ultra all over every time so at first i don't know what this packet is i just want to know whether there is some repeated header in the signal so as shown if a previous offer speaker you just auto create the signal if there is some redundancy this redundancy will show so by Auto correlating my signal well indeed I see a peak at 16 kilobyte I see a signal at 32 kilobytes so there is some redundancy every 16 thousand samples I have some repetition so it's definitely worth working further on this data so the
10:11
first thing that got me stuck because again I'm physicists I haven't been taught about single digital communication was consolation convolutional encoding so that's the topic of Martin's focus morning I'm just going a slightly bit further into it because I want to show you how its decoded I don't want to get to the encoding part the encoding actually is very simple because they show you on various documentation as an XOR so as well as shown by Martin this morning you just take your data stream and take convolution convolution so you try to mix all these data to create as much randomness as you can select is one of these bits is corrupted you have a lot of chance because you've spread the information of a long duration to recover this information so here it's a seven bit long shift register you have tabs from which you XOR and you get twice as many bits on the output as you had on the input so this your shift here will clock up down up down and sometimes take the output with one polynomial and on the other so if you do this you can also express this the matrix where time is evolving over the xaxis and you join first coefficient second coefficient first so first coefficients or first polynomial first coefficient of second polynomial second coefficients of first ramonja and so on so you have your polynomial which are interleaved and you judge shift time so that's another way of implementing your Viterbi you're convolution encoding and the last way of saying it is you can do this as a as a state machine so you take the various states of your polynomial here you input a new bit into your system and by inputting a new bit in your system your shift register changes so if you had 0 and you inject a 0 you stay at 0 and your output you run the XOR on this all the 0 you get an out 0 output if you inject one well your 0 goes to the last 0 drops the 1 comes here and you run this for the XOR you get 1 1 so you can make this as a state machine so once you've discovered you have a segment expression you can write this as the evolution of between the various states so previously I had given names
12:18
ABCD to my various states and then you can draw the state machine so a stays in
12:23
a a goes to B if you have a 1 then so these are the input bits so if a is 0 0 it stays at a hey when it is feather zero will output zero zero a when it is fed a 0 where a when it is feather 1 will output 1 1 and so on so you can draw your state machine so encoding is very efficient very easy it's just X or now the reason I wanted
12:57
to show you this is if you take the same description that we had here but now you take it to decode but 30 second
13:07
description of the Viterbi decoding algorithm in 30 seconds what you have here is let's imagine I have received this bit stream so this is what I have read so I split what I have and so on what you see here I start with 0 0 ok I get 0 0 that is most probably state a with a 0 output 0 0 state a 0 0 0 0 state a 0 0 so these free zeros are just a looping in to be 0 0 now we get 1 1 1 1 is a feasible output of state a that gets us into state B so we're going to state B when you're in state B we get 1 1 but that's not possible we cannot get a 1 1 out of state D we can get 1 0 0 1 well the moment we don't know what the best option so let's follow the two possible paths we know it's wrong but let's follow the two possible paths after that we got 0 1 so we could be here C but she cannot have 0 1 you can the only one 1 or 0 0 so C would create two errors that's a wrong path so we cut it out and Viterbi tells you let's not follow this one now we go into this path here because 0 1 is a valid output of D that would be considered as a 0 and then you go on and you follow it your part your path so if I add the output dates
14:21
here you have the number in red of errors two errors means we give up on this particular branch and we continue with a branch with only one error and this unique error con continues with a consistent path that tells you in the transmission this bit was erroneous so you see that by spreading the information over a long duration where we had just a burst of 1 bit error that's the point of convolution encoding is just a noise on one date and this unique bit has been recovered by the Turbie decoding and then indeed we recover 1 a which is the first bit the first byte of our synchronization words so okay we've understood be decoding so now well we
15:01
can go for so yeah sorry this is what I so if you don't want to go into all the math by yourself you have lip back with you and by K thank you and lead pack will do the job for you here I put for you a very simplified chart of a friendly lip fact for Viterbi decoding just don't do the same mistake as I did leap fake will not take as input 0 or 1 you need to feed it 0 or 255 it's working a bite so I struggle for like a couple of weeks why is libtech not they put decoding just because I was giving in 0 & 1 if it's 0 and 255 and again the word encodedword here will be decoded as 1a c FF c 1z so we know that the encodedword of btob you can use the effect to encode or to decode so this is encoded word and this is the decoded world this is how you do it with recheck okay so we've got r effect we can check
15:55
that indeed we can decode our word so if we have the sequence so this is an example that was given to me by by the author of gr satellite by daniel Estevez I hope I pronounce his name correctly it's you've got the fake decoder here as was shown by by marching this morning and if I feed my gr decoder here with encodedword indeed I can get the output which is 1a c FF c 1 d except sometimes I get wrong messages because you see here that my input stream is repeating and if I repeat my input stream the hypothesis of picker B is to start with a shift register that is full of 0 and that is not correct because here after the first coding I don't have a shift register full of 0 so then I have one wrong one wrong sequence and then I go back to 1 HDFS C 1 D which is the correct sequence so you can play with this and it's an opportunity to see how the hello world of of CCS yes is decoded by by by the fake decoder in the radio what is the sequence well as we did for GPS now I should be able to correlate my sifts signal with a synchronization word after encoding by Viterbi and miserably failed you see absolutely no correlation peak I cannot find in my QPSK signal the the set of bits of my encoding words why is that well I associated the usual constellation to my QPSK QPSK is four phases so I have 90 180 270 360 degrees and 270 degrees and I associated the word symbol a set of bits to each one of these symbols of his states but why would I do that why would I not associate a different symbol to a different bit of this set of bits pair of bits to each symbol so this is actually what you figure out when you read the source code of material decoder you figure out that metal decoder starts by creating rotated copies all the possible rotated copies which comes back to say let's take the standard distribution of big pairs of QPSK and let's imagine like lighting in BPSK you can you can have 0 or PI or PI or zero but in BPSK it doesn't care because you just go to a 0 1 or 1 0 but you will still correlate only you have an anti correlation sort of correlation but so to PSK you've got all these Possible's she's position so you can swap the real part you can swap the imaginary part or you can swap these parts here and so if you look into metal decoder you indeed find that well I will not get with you
18:38
but you swap all the possible big pairs so 1 1 becomes 0 1 1 1 can become 0 0 1 one can become 1 0 so you make all the possible combinations and because you don't care about anticorrelation these 8 possible bit swaps actually become four possible combinations because you have four ways of combining all these bits if you think that 1 1 and 0 0 are the same so having done that now you can
19:05
see here all the possible correlations and the only one that gives you correlation I don't know if you can see this from the room but you've got no correlation P for all these cases but here you've got these correlation Peaks every 16,000 bits so this means this is the right assignment or of each symbol into the repair so now I found how to convert my QPSK signal into the encoded Viterbi keyboard key word and by encoded Viterbi synchronization world I can start decoding mymymy sentences so I will skip reedsolomon because actually rich Solomon is a block encoder so Viterbi is to eliminate random bits that have flipped or IVA communication while Reed Solomon or what well the reason I'm skipping it is because I investigated quite more deeply BCH which is the encoder block encoder in RDS that was investigated heavily by by bastion so when I worked on BCH I've put a reference here you can look at how BCH is working and Reed Solomon is just an extension of this the only reason I'm mentioning this is you've got your data here if you don't want block correction which is someone is emitting and you've got whole blocks of data that have been corrupted well you can get rid of Reed Solomon if you want to use it just be aware because I again you want to spread information over time because you want to recover as much time as for as much information as possible you will have interleaved Reed Solomon meaning you have for intra live Reed Solomon you have data 1 theta 2 theta 3 theta 4 theta 1 theta 2 theta 3 theta 4 you need to be interleave the render reedsolomon they code recovery and then re interleave your data so it's just I will skip this because well because only I don't have time to get the details and
20:52
again I give you the example how to run how to run the reedsolomon decoder in in gr fake sorry in the lip fake so if you want to give it a try by yourself here is my data set I voluntarily corrupt 4 bytes I voluntarily corrupt bytes in the data set so in the payload or in the correction code and if I run this in my reedsolomon decoder indeed I detect or I leave lipstick detects for corrupted bytes and the score for corrupted bytes are these values which which can be recovered so Long's only you decock discover which files are corrupted but you can find the properly initial values of these bytes so just demonstration again you have to run it by yourself I can talk as much as I want if you don't run it by yourself you don't learn so try try it by yourself good so we claim to have found out how to work with Viterbi decoder we claim to have worked understood how reedsolomon is working so are the bits that we get out of the Viterbi decoder valid but I can claim now I've done the job I can go away well we want a picture we don't want a random set of bits so the first thing we can do when we look at the data sheet is or V documentation of a metre and 2 transmission whose website I'll give you the references where you can find documentation the last slide you see that very celebratory data and this telemetry data are encoded in a sentence to recognize so that you know where your telemetry data are located so you've got this magic sentence 224 168 163 146 bla bla bla 191 so this magic sentence tells you I am sending a telemetry frame so what do we do well we take all our decoded bits and we cross correlate our decoded bits with this sequence and this is one of these all inspiring moments where it works you find this sentence in all your bits and if you decode the the following bytes hours minutes seconds you find that that information was collected at 11 o clock 48 minutes 33 seconds which is indeed the output of the Metro decoder provided as a reference so you see here that we have indeed properly decoded the Viterbi and reedsolomon or actually in this part our skip read Solomon but we have understood Viterbi because we can find the telemetry sentence and we can decode proper information now I found the telemetry but still a bit far from from pictures but the next part the end now is easy because I don't get the details I it took me a couple of months this work has been started little more than a year ago but once you've got the bits it's a matter of basically finding what the bytes are and checking whether they follow of a standard so I will not give the details but indeed you see that you've got this header which is always the same that tells you well we're in a good job there's an ID when they tell you how to counter well indeed these free bytes you see they're increasing one by one so we're on the right path and then they sell tell you here is a header so this is an address of the first payload because the difficulty is that you've got the data packet and then you've got the payload packet and there is no reason for the data packet to be synchronized on tailored packets so you might have payload lying over multiple data packets so this is the address at which the first payload package is starting and so on and so on so I will not be in the detail but that's just a matter of following the protocol so once you get the bite it's really easy and finally you are supposed on the payload to get JPEG images and this is where I gave up I said okay I'm not gonna re encode the whole Huffman encoder and everything so this is where I just took this part of the decoder vomitorium to decoder that was ported from Pascal to C++ and I just use ver decoder JPEG is standard bachelor level computer science signal processing training I didn't want to write all of it again maybe for the next training session but yeah I wanted to get some images so I went so to conclude
24:56
the talk that's what I get at first so you are told in the standards again it's all the detail of the paper of it I uploaded on the post and website you are told that your frames your JPEG images are eight by a bit frames this 8 by a bit thumbnails repeat 14 times and each one of these 14 times 8 bit sequences repeats 14 times along one teacher line and then you jump to the next instrument because our free wavelengths which they call three instruments you get one line of the next instrument a bit wide 1,500 bit long and then you go to the next instrument and so on so here you see that I had some missing frames so some missing thumbnails that I had to introduce so what I did here is because you've got a counter you know that when you have missing frames here I just very stupidly did if you are missing a frame copy of a previous frame and this way I could miss feel the missing thumbnails and here you start seeing some pattern and here you've got one parameter in JPEG which is called the coefficient quality coefficient which gives you the relation between the quantization and the quantization matter and here is no quality so you see that the sharp pictures here don't have the same tone as as a flatter area of a picture but you start seeing here the Alps and finally by applying the quality coefficient you get an image that is a bit more smooth and that compares I think quite favorably to the reference
26:25
picture that was decoded using the satellite of a mineral decoder that you can find on the Internet so here you see each tria you have patton lake somewhere over here I think you've got Vanessa over here so if you take the metro decoder you get an image that is quite consistent with what we got by stepbystep decoding so that was of course in 25 27 minutes a very fast highlight of the main steps go for the paper the paper is actually about 50 pages long at the moment and an increasing but I'm trying to put everything for IQ coefficients all the weights for JPEG image CC SDS is a protocol for space communication you might not care about weather satellites but what Daniel is today is showing on his blog and as mentioned by my poll is this is a standard for most satellite communication and that's going to be the future because no way is going to stop the analog satellites so I think if you want if you're interested in solid decoding this is really worth investigating Daniel Estevez is just addressing all the satellites avatar satellites up there Lucas Tesla is a Brazilian guy who's working on going satellites geosynchronous and his website was very inspiring despite at some point splitting the path of decoder his beginning was very insightful he helped me a lot by email to guys helped me a lot this is a website that was hosting all the files about meteor m2 somehow in between in the middle of this investigation it disappeared I don't know where the site is hopefully we've got a web archive I don't know where this website is disappeared but this is a fundamental repository of all the data some of which cannot be found anywhere else and finally there is one article which is not well not very technical but it tells you that it could be done and we bet I conclude my talk and I thank you for attention [Applause] next one so just as a quick conclusion
28:25
martin introduced during his introductory talk that we are organizing the european new radio days so my frustration is that here we have two days off first then we have one day full of talks we never have time to discuss with each other everyone's running to our sessions and i wanted to have an opportunity to meet with people and sit together so the way I organized this is one day or we organized this is one day of oral presentation one day of tutorials everything is open at the moment we are proposing some tutorial please feel free to propose new tutorials Robin Gates is coming from analog devices to demonstrate the Pluto so he told me I hope and I trust him it is located in France in business or but also is a tiny remote City which means that hotels are readily available here in the east of France it's two and a half hour train trip from Paris it's a few hours from cultural toughing it's a couple of hours from college through the cocoa and cocoa food contribution is March 21st registration is free but please register because I need to organize I need to know how many people are coming so registration registration deadline is May 1st the website is over here and hopefully the evening dinner will be a barbecue so everyone can talk to each other and and have more time to discuss so I will not waste our time with more advertisements but please come you