SE531833C2 - Method of compressing data including transformation via a spiral function - Google Patents

Method of compressing data including transformation via a spiral function

Info

Publication number
SE531833C2
SE531833C2 SE0801660A SE0801660A SE531833C2 SE 531833 C2 SE531833 C2 SE 531833C2 SE 0801660 A SE0801660 A SE 0801660A SE 0801660 A SE0801660 A SE 0801660A SE 531833 C2 SE531833 C2 SE 531833C2
Authority
SE
Sweden
Prior art keywords
data
phase
radius
function
data elements
Prior art date
Application number
SE0801660A
Other languages
Swedish (sv)
Other versions
SE0801660L (en
Inventor
Ali Majeed
Original Assignee
Ali Majeed
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ali Majeed filed Critical Ali Majeed
Priority to SE0801660A priority Critical patent/SE0801660L/en
Priority to PCT/SE2009/000353 priority patent/WO2010005359A1/en
Publication of SE531833C2 publication Critical patent/SE531833C2/en
Publication of SE0801660L publication Critical patent/SE0801660L/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/548Trigonometric functions; Co-ordinate transformations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • H04N7/30

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

25 30 Ändamålet med föreliggande uppfinning är därför att åstadkom- ma en komprimering av data av allmänt slag, där det inte är nödvändigt att känna till vad datasekvensen innehåller. The object of the present invention is therefore to provide a compression of data of a general kind, where it is not necessary to know what the data sequence contains.

Föreliggande uppfinning åstadkommer en sådan komprimering av allmänt slag utan något behov av att känna till den specifika datasekvensen. Dessutom sker komprimeringen enligt uppfin- ningen på relativt kort tid, vilket gör det möjligt att ut- nyttja den för realtidsapplikationer. Enligt uppfinningen sker komprimeringen genom att två variabler representeras med hjälp av en variabel som skapas av en periodisk funktion.The present invention provides such a general type compression without any need to know the specific data sequence. In addition, the compression according to the invention takes place in a relatively short time, which makes it possible to use it for real-time applications. According to the invention, the compression takes place by two variables being represented by means of a variable created by a periodic function.

Föreliggande uppfinning hänför sig till typen förstörande komprimeringsmetod, eftersom det tillkommer ett visst fel vid Skillnaden tillkommer här avser delar av elementen, komprimeringsprocessen. är dock att felet, som till skillnad från övriga komprimeringsmetoder av denna typ där felet uppkommer på grund av att hela element tas bort.The present invention relates to the type of destructive compression method, since there is a certain error in the difference added here refers to parts of the elements, the compression process. is, however, that the error, which unlike other compression methods of this type where the error occurs due to whole elements being removed.

Tanken är att använda sig av den periodiska variabeln på två olika sätt och därmed kan en periodisk variabel bära informa- tion om två icke periodiska variabler. Ett exempel på detta tankesätt är: ®1 = 450 siffror, och oz = 45° + 360° = 405°. 45 och 405 är helt olika men i. en periodisk funktion som exempelvis sinus, 1 sin(@1)=sin(45°)=-- och JE sin(@fl=sin(405°%=åÉ. Två olika variabler kan alltså i. en skulle dessa. variabler resultera i periodisk funktion ge olika resultat, men eftersom variabler- na är olika skulle denna olikhet ändå kunna användas som ett extra informationselement, förutom att det är en fas. Om detta tankesätt utvecklas skulle exempelvis två variabler i ett kartesiskt koordinatsystem kunna representeras som en 10 15 20 25 30 radie och en fas. Radien kan anpassas så att den blir repre- senterad ett helt antal perioder för att sedan addera fasen till den och på så sätt ska summan vara fasen, men även radi- en.The idea is to use the periodic variable in two different ways and thus a periodic variable can carry information about two non-periodic variables. An example of this mindset is: ®1 = 450 digits, and oz = 45 ° + 360 ° = 405 °. 45 and 405 are completely different but in a periodic function such as sine, 1 sin (@ 1) = sin (45 °) = - and JE sin (@ fl = sin (405 °% = åÉ. Two different variables can Thus, in these cases, these variables would result in periodic function giving different results, but since the variables are different, this difference could still be used as an additional information element, except that it is a phase. a Cartesian coordinate system can be represented as a radius and a phase. - one.

Uppfinningen kommer att förklaras närmare här nedan och åskådliggörs även med» hjälp av de bifogade figurerna, där Fig. 1 visar ett exempel på en punkt i ett ortogonalt koordi- natsystem, Fig. 2 visar motsvarande vy som i Fig. l, men med en inritad spiral, som passerar genom punkten p, Fig. 3 visar i ett diagram resultatet av en simulerad komprimering och återskapande av data enligt uppfinningen och Fig. 4 visar ett diagram över komprimerade data x.The invention will be explained in more detail below and is also illustrated by means of the accompanying figures, where Fig. 1 shows an example of a point in an orthogonal coordinate system, Fig. 2 shows a corresponding view as in Fig. 1, but with a drawn spiral passing through the point p, Fig. 3 shows in a diagram the result of a simulated compression and reproduction of data according to the invention and Fig. 4 shows a diagram of compressed data x.

Onl man tänker sig två variabler, som representeras i ett kartesiskt koordinatsystem såsom i Fig. 1 kan man se att xl och yl sammanfaller i punkten p, som har en viss radie och fas från origo. Det är uppenbart att det behövs tvâ variabler för att komma åt punkten p, antingen med hjälp av x och y eller med en radie och fas. Frågan om komprimering blir då om det finns något sätt att komma åt punkten p med enbart en variabel. I Fig. 2 visas en spiral, som täcker hela xy- planet. En spiral är en periodisk funktion, som beror av en variabel. Här framgår att med hjälp av denna spiralfunktion skulle man kunna komma åt punkten p, liksom även vilken som helst annan punkt i xy-planet.If one imagines two variables, which are represented in a Cartesian coordinate system as in Fig. 1, one can see that xl and yl coincide in the point p, which has a certain radius and phase from the origin. It is obvious that two variables are needed to access the point p, either by means of x and y or by a radius and phase. The question of compression then becomes whether there is any way to access the point p with only one variable. Fig. 2 shows a spiral covering the entire xy plane. A spiral is a periodic function, which depends on a variable. Here it appears that with the help of this spiral function one could access the point p, as well as any other point in the xy plane.

Tanken med uppfinningen är således att använda spiralen som en periodisk funktion för att kunna representera två variab- ler i det kartesiska koordinatsystemet. I själva verket sker det en transformation från det kartesiska koordinatsystemet till det spirala koordinatsystemet. Denna transformation kan då även användas som ett slags komprimering på så sätt att två variabler blir en. 10 15 20 25 30 Genom att anpassa radien till ett helt antal perioder, inte tion som har någon påverkan på resultatet på en periodisk funk- kan man sedan addera fasen på den anpassade radien så att summan fungerar både som radie och som en fas i en perio- disk funktion.The idea of the invention is thus to use the spiral as a periodic function to be able to represent two variables in the Cartesian coordinate system. In fact, there is a transformation from the Cartesian coordinate system to the spiral coordinate system. This transformation can then also be used as a kind of compression in such a way that two variables become one. 10 15 20 25 30 By adapting the radius to a whole number of periods, not tion that has any effect on the result on a periodic function, you can then add the phase on the adapted radius so that the sum functions both as a radius and as a phase in a periodic function.

Matematiskt sett sker komprimeringen på följande sätt: l.variablerna x och y är reala tal 2. x och y översätts till en radie och en fas som: r=JG3::;Û och ø=æbmnš 3. enligt spiralfunktionen i ovannämnda beskrivning, ser man att x och y blir till en variabel z och denna varia- bel tas fram som: z=1'+ø* , där r*och ø*är den anpassade radien och fasen eftersom bara addering mellan radien och fasen gör att man inte kan veta vad i z, som är radien och vad som är fasen. Men om man anpassar radien så att den motsvarar ett helt antal perioder, kan man addera fasen (w) på den anpassade radien (r*) så att z ses både som en radie och som en fas. Alltså radien anpassas som: f=wvund(á;], d.v.s. närmast antal hela perioder.Mathematically, the compression takes place as follows: l. The variables x and y are real numbers 2. x and y are translated into a radius and a phase which: r = JG3 ::; Û and ø = æbmnš 3. according to the spiral function in the above description, you see that x and y become a variable z and this variable is produced as: z = 1 '+ ø *, where r * and ø * are the adapted radius and phase because only adding between the radius and the phase makes you can not know what iz, what is the radius and what is the phase. But if you adjust the radius so that it corresponds to a whole number of periods, you can add the phase (w) to the adjusted radius (r *) so that z is seen both as a radius and as a phase. Thus the radius is adjusted as: f = wvund (á;], i.e. the nearest number of whole periods.

Därmed kan man addera fasen på radien utan att de be- blandas med varandra. 4. variabeln 2 är här en radie, men är även en fas. Och det är 2 som är det komprimerade dataelementet av de två in- gående variablerna x och y av z, kan man sedan extrahera x och y som: x=z * cos(z) y= z *sin(z) . 10 15 20 25 30 53% 833 Som ett verkligt exempel på hur komprimeringen sker med hjälp av uppfinningen, användes här en simulering i Matlab. Simule- ringen är endast en tillämpning av uppfinningen. Matlab är ett matematiskt verktyg som används av ingenjörer och matema- tiker. Närmare beskrivning av verktyget finns bl.a. på http://www.thematworks.com/matlab/.This allows you to add the phase to the radius without mixing them with each other. 4. variable 2 is here a radius, but is also a phase. And it is 2 which is the compressed data element of the two input variables x and y of z, one can then extract x and y as: x = z * cos (z) y = z * sin (z). 10 15 20 25 30 53% 833 As a real example of how the compression takes place with the aid of the invention, a simulation in Matlab was used here. The simulation is only an application of the invention. Matlab is a mathematical tool used by engineers and mathematicians. A more detailed description of the tool can be found in e.g. at http://www.thematworks.com/matlab/.

Simuleringen gjordes som de nedanstående raderna: 1. a = round(randn(100,1).*16000); 2. a = intl6(a); 3. period = 180; 4. a = double(a); 5. a = a./1.42; 6. L = length(a); 7. x1 = x(1:L/2); x2 = x(L/2+1:end); 8. sig = xl+i*x27 9. r = abs(sig); 10. f = ang1e(sig); 11. f= round(f.*(p/(2*pi))); 12. rr = r-mod(r,p); 13. yyy = rr+f; 14. yy = round(yyy); 15. x = int16(YY); 16. x = double(x); 17. r = x-mod(x,period); 18. r = r.*1.015; 19. f = mod(x,period); 20. f = f.*(2*pi/period): 21. yl = r.*cos(f)*O.995; 22. y2 = r.*sin(f)*0.995; 23- yyy = [yl:y2]; 24. yy = yyy.*l.42; 25. b = int16(yy); 10 15 20 25 30 26. 27. 28. 29. 53% 833 T= l:length(b); p1ot(T,a), hold, plot(T,b,'r') T2 = l:length(x) figure, plot(T2,x) Med vanliga ord kan simuleringen förklaras rad för rad som följer: 1. en vektor (a) skapas, som består av hundra slumpmässi- ga tal som sedan multipliceras med ett högt tal så att stegen blir lätta att skilja åt. Dessa data har vit- brusegenskaper elementen i vektor a översätts från 64-bit till 16-bit siffror eftersom 16-bit är en standard-storlek man an- Vektorn här alltså 1600 vänder i de flesta tekniska applikationer. har alltså 100 element på 16-bit vardera, bit total datamängd perioden som ska användas anges till 180 grader, peri- oden här är en designvariabel och kan sättas till ett annat värde eller làtas vara dynamisk Matlabs funktioner är begränsade till 16-bits siffror, därför översätts vektorn temporärt från 16-bit till 64-bit siffror vektorn delas med roten ur två (l,4l ) så att man se- nare slipper överskrida 16-bits övre gräns i 16-bit är 1 till 65536, 32768) (gränserna från eller -32768 till längden av vektorn a anges för datorn vektorn a delas till två vektorer xl och x2, som har varsin halv storlek av a (här är a lika med 100 ele- ment, X1 och X2 är 50 element var) vektorerna xl och x2 sätts inom xy-planet så att xl utgör x och X2 utgör y radien av xl och x2 beräknas (d.v.s. 50 radier av var- je par i xl och X2 räknas fram) 10 15 20 25 30 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. kfl M3 ...n Ü? hä BJ fasen för varje par i xl och x2 beräknas fasen anpassas så att den passar till perioden, som är satt från början, d.v.s. fasen anpassas så att 180 grader här utgör en hel period radien anpassas så att den utgör ett helt antal perio- der den anpassade radien och den anpassade fasen summeras, summan här har 50 element summan avrundas så att inga decimaler följer med summan översätts till 16-bit eftersom det komprimerade datat enligt uppfinningen skall vara ndndre i. antal variabler och samtidigt som den komprimerade variabeln skall ha samma datamängd-storlek, som den ursprungliga variabeln. variabeln x är därmed det komprimerade datat och har en datamängd om 50 element på 16-bit var, alltså total datamängd 800 bit. Här är komprimeringsbiten klar, då man kan spara eller skicka x. här börjar dekomprimeringen genom att först översätta x från 16-bit till 64-bit, eftersom Matlab inte klarar av att arbeta med 16-bit siffror radien separeras från fasen i x på det viset att man vet att radien består av ett helt antal perioder, där- med kan man göra separationen genom att ta ett helt antal perioder, som finns i x och sätta dem till radi- en eftersom det finns en del av den ursprungliga radien, som förstördes på grund av anpassningen till perioden, multipliceras radien här med konstanten 1,015, som är en tillrättande/korrektions-konstant fasen tas fram ur x genom att subtrahera bort ett helt antal perioder och det som finns kvar blir då fasen fasen återskapas till sitt grundskede efter att ha blivit anpassad till perioden, som är ansatt här. 10 15 20 25 30 531 833 D.v.s. från början anpassades fasen så att en hel pe- riod skall motsvara l80 grader och här återgår fasen till sitt grundskede, där en hel period motsvarar 360 grader 21. de framtagna värdena på radien och fasen sätts in i formeln yl = r*cos(f) så att man får den del, som mot- svarar xl samt att värdet multipliceras med 0,995, som en del av tillrättande/korrektions-steg 22. som i punkt 20 för att få den del som motsvarar X2 23. yl och y2 sätts ihop till en vektor så att den får samma storlek som a (i motsats till 7) 24. multiplicera med roten ur två så att y får samma stor- lek som i a (i motsats till 5) 25. y översätts från 64-bit till 16-bit så att den får samma datasort, som a och kalla resultatet b, här är processen klar då b nmtsvarar det återskapade datat efter komprimeringen 26. en tidsenhet skapas så att man kan se resultaten gra- fiskt, d.v.s. stegring l till 100 27. ursprungliga datat a samt resulterande datat b ritas, Fig. 3 28. en tidsenhet skapas så att man kan se resultatet för x grafiskt, d.v.s. stegring l till 50 29. det komprimerade datat x ritas i en separat graf, Fig. 4 De resulterande graferna, är de grafer, som skapades av simu- leringen. Den första grafen, Fig. 3, beskriver grunddata a och resultatdata b.The simulation was done as the following lines: 1. a = round (randn (100,1). * 16000); 2. a = intl6 (a); 3rd period = 180; 4. a = double (a); 5. a = a./1.42; 6. L = length (a); 7. x1 = x (1: L / 2); x2 = x (L / 2 + 1: end); 8. sig = xl + i * x27 9. r = abs (sig); 10. f = ang1e (sig); 11. f = round (f. * (P / (2 * pi))); 12. rr = r-mod (r, p); 13. yyy = rr + f; 14. yy = round (yyy); 15. x = int16 (YY); 16. x = double (x); 17. r = x-mod (x, period); 18. r = r. * 1,015; 19. f = mod (x, period); 20. f = f. * (2 * pi / period): 21. yl = r. * Cos (f) * O.995; 22. y2 = r. * Sin (f) * 0.995; 23-yyy = [yl: y2]; 24. yy = yyy. * L.42; 25. b = int16 (yy); 10 15 20 25 30 26. 27. 28. 29. 53% 833 T = l: length (b); p1ot (T, a), hold, plot (T, b, 'r') T2 = l: length (x) figure, plot (T2, x) In common words, the simulation can be explained line by line as follows: 1. a vector (a) is created, which consists of one hundred random numbers which are then multiplied by a high number so that the steps become easy to distinguish. This data has white-noise properties. The elements in vector a are translated from 64-bit to 16-bit digits because 16-bit is a standard-sized man. The vector here thus uses 1600 in most technical applications. thus has 100 elements of 16-bit each, bit total data amount the period to be used is specified to 180 degrees, the period here is a design variable and can be set to a different value or left to be dynamic Matlab's functions are limited to 16-bit digits, therefore, the vector is temporarily translated from 16-bit to 64-bit digits. from or -32768 to the length of the vector a is given for the computer the vector a is divided into two vectors x1 and x2, each having a half size of a (here a is equal to 100 elements, x1 and x2 are 50 elements each) the vectors x1 and x2 is set within the xy plane so that x1 constitutes x and x2 constitutes y the radius of x1 and x2 are calculated (ie 50 radii of each pair in x1 and x2 are calculated) 10 15 20 25 30 10. 11. 12. 13 14. 15. 16. 17. 18. 19. 20. k fl M3 ... n Ü? Hä BJ phase for each pair in xl and x2, the phase is calculated to be adapted to suit the period one, which is set from the beginning, i.e. the phase is adjusted so that 180 degrees here constitutes an entire period the radius is adjusted so that it constitutes a whole number of periods the adjusted radius and the adapted phase are summed, the sum here has 50 elements the sum is rounded so that no decimals follow the sum is translated to 16- bit because the compressed data according to the invention must be lower in number of variables and at the same time the compressed variable must have the same amount of data size as the original variable. the variable x is thus the compressed data and has a data set of 50 elements of 16-bit each, ie a total data set of 800 bits. Here the compression bit is ready, as you can save or send x. Here the decompression starts by first translating x from 16-bit to 64-bit, because Matlab is not able to work with 16-bit digits the radius is separated from the phase ix in that way that you know that the radius consists of a whole number of periods, thus you can make the separation by taking a whole number of periods, which are ix and putting them to the radius because there is a part of the original radius, which was destroyed on due to the adaptation to the period, the radius here is multiplied by the constant 1,015, which is a correction / correction constant phase is taken out of x by subtracting a whole number of periods and what is left is when the phase phase is recreated to its basic stage after has been adapted to the period, which is employed here. 10 15 20 25 30 531 833 D.v.s. from the beginning the phase was adjusted so that an entire period should correspond to 180 degrees and here the phase returns to its basic stage, where an entire period corresponds to 360 degrees 21. the produced values of the radius and the phase are entered in the formula yl = r * cos (f ) so that you get the part corresponding to x1 and that the value is multiplied by 0.995, as part of the correction / correction step 22. as in point 20 to get the part corresponding to X2 23. y1 and y2 are put together to a vector so that it has the same size as a (as opposed to 7) 24. multiply by the root from two so that y has the same size as ia (as opposed to 5) 25. y is translated from 64-bit to 16 -bit so that it gets the same data type, as a and call the result b, here the process is complete when b nm corresponds to the recovered data after the compression 26. a time unit is created so that you can see the results graphically, ie. increase l to 100 27. the original data a and the resulting data b are drawn, Fig. 3 28. a unit of time is created so that one can see the result for x graphically, i.e. step 1 to 50 29. the compressed data x is drawn in a separate graph, Fig. 4 The resulting graphs are the graphs created by the simulation. The first graph, Fig. 3, describes basic data a and result data b.

Den andra grafen, Fig. 4, beskriver det komprimerade datat. är den Som man ser från den andra grafen, på storlek 50 element och variation på mindre än -32768 till 32768 (16-bit data), d.v.s. den är verkligen hälften så stor som originaldata. 10 15 20 25 30 åh ...a 3 C451 ÛJ Från den första grafen, Fig. 3, ser man en hackig kurva, som är en vitbrus/slumptals-sekvens som skapades av simuleringen.The second graph, Fig. 4, describes the compressed data. is the As seen from the second graph, on size 50 elements and variation of less than -32768 to 32768 (16-bit data), i.e. it is really half as big as the original data. 10 15 20 25 30 oh ... a 3 C451 ÛJ From the first graph, Fig. 3, you see a choppy curve, which is a white noise / random number sequence created by the simulation.

I själva verket är det två kurvor pà varandra eftersom resul- tatet är nästan identiskt med originalet. Grunddata visas med en linje a och resultatdata med en linje b, vilka två linjer är nästan identiska och linjerna går därför inte att skilja från varandra i samma figur. Dock finns det små variationer i vissa delar, vilket är det fel, sonl medföljer metoden på grund av att den är en förenkling.In fact, there are two curves on each other because the result is almost identical to the original. Basic data is displayed with a line a and result data with a line b, which two lines are almost identical and the lines can therefore not be separated from each other in the same figure. However, there are small variations in some parts, which is wrong, sonl comes with the method because it is a simplification.

Simuleringen gjordes här på en 100 element lång vektor av slumpmässiga siffror på 16-bit format. D.v.s. en vektor be- stående av 100 normalfördelade slumpmässiga siffror i en 16- bit storlek där variationen sker i 65536 olika steg. Resulta- tet visar att mängden data har halverats under komprimerings- steget då datamängden under komprimeringen är en vektor på 50 element på 16-bit storlek var. Alltså den ursprungliga data- mängden var 1600 bit, som reducerades till 800 bit för att sedan återskapas till resultatdata på storleken 1600 bit.The simulation was done here on a 100 element long vector of random numbers in 16-bit format. I.e. a vector consisting of 100 normally distributed random numbers in a 16-bit size where the variation takes place in 65536 different steps. The result shows that the amount of data has been halved during the compression step as the amount of data during compression is a vector of 50 elements of 16-bit size each. Thus, the original amount of data was 1600 bits, which was reduced to 800 bits and then recreated into result data of the size 1600 bits.

Av resultatet kan man se prestandan, som finns i uppfinning- en, nämligen det allmänna signalkravet, samt enkelheten då inga komplexa matematiska funktioner används.From the result one can see the performance, which is found in the invention, namely the general signal requirement, as well as the simplicity when no complex mathematical functions are used.

När det gäller felet, är den på låg marginal. Enligt felbe- har denna simulering resulterat i SNR på SNR = 37.22 dB. räkningar, (signal to noise rate) SNR står för hur bra signalen är i en jämförelse mellan insignalen och utsignalens fel. som. SNR = SNR beräknas 10*log(ursprungligt data/felet). Vidare kan detta fel förebyggas genom utveckling gällande designva- riablerna i_ metoden såsom i. punkten 3 i. simuleringen, där perioden valdes till ett fast värde på 180 grader. Om nan däremot väljer att ha parametern dynamisk på det sättet att den blir beroende av radien, får man högre SNR. I ett test- 53% S33 10 försök som gjordes kring denna förbättring, blev SNR till 42 dB.As for the error, it is on a low margin. According to the error, this simulation has resulted in SNR of SNR = 37.22 dB. counts, (signal to noise rate) SNR stands for how good the signal is in a comparison between the input signal and the error of the output signal. as. SNR = SNR is calculated 10 * log (original data / error). Furthermore, this error can be prevented by developing the design variables in the method as in point 3 of the simulation, where the period was selected to a fixed value of 180 degrees. If, on the other hand, nan chooses to have the parameter dynamic in such a way that it becomes dependent on the radius, a higher SNR is obtained. In a test 53% S33 10 experiment made around this improvement, the SNR became 42 dB.

Det finns också möjlighet att utveckla resultaten ytterligare genom t.ex. filtrering för att minimera felmarginalerna.It is also possible to further develop the results through e.g. filtering to minimize the margins of error.

Ytterligare förbättringar av uppfinningen är möjliga, vilket torde inses av fackmannen.Further improvements of the invention are possible, as will be appreciated by those skilled in the art.

Claims (3)

1. 0 15 20 25 30 ll Patentkrav l. Förfarande vid komprimering av data, k ä n n e t e c k - n a t av att tvâ dataelement komprimeras till ett dataele- ment genom att det absoluta beloppet av de två dataelementen anpassas till ett helt antal perioder för en periodisk funk- tion, så att addition mellan det anpassade absoluta beloppet och en fas mellan de två elementen hos den periodiska funk- tionen resulterar i att summan kan verka både som en radie och en fas för den periodiska funktionen, den periodiska funktionen är en spiralfunktion och att spiralfunktionen för en punkt (x, y), som representerar de två dataelementen i ett ortogonalt koordinatsystem definieras som x = a*z*cos(b*z) II y a*z*sin(b*z) där z är det element, som motsvarar summan av det anpassade absolutbeloppet och fasen mellan de två dataelementen x och Y, där a och b är designvariabler som kan sättas godtyckligt för att ge spiralfunktionen olika egenskaper och där det komprimerade dataelementet har samma databitstorlek, som de två dataelementen.Claim 1. A method of compressing data, characterized in that two data elements are compressed into one data element by adapting the absolute amount of the two data elements to a whole number of periods for a periodic function, so that addition between the adjusted absolute amount and a phase between the two elements of the periodic function results in the sum being able to act both as a radius and a phase for the periodic function, the periodic function is a spiral function and that the spiral function of a point (x, y), which represents the two data elements in an orthogonal coordinate system, is defined as x = a * z * cos (b * z) II ya * z * sin (b * z) where z is the element , which corresponds to the sum of the adjusted absolute amount and the phase between the two data elements x and Y, where a and b are design variables that can be set arbitrarily to give the spiral function different properties and where the compressed data element has the same data bit size, as the two data elements. 2. Förfarande enligt krav l, k ä n n e t e c k n a t av att återskapande av de tvâ dataelementen sker genom att elementet z insättes i spiralfunktionen.Method according to Claim 1, characterized in that the reproduction of the two data elements takes place by inserting the element z into the spiral function. 3. Förfarande enligt krav l k ä n n e t e c k - eller 2, n a t av att de två dataelementen är av samma databitstor- lek.Method according to claim 1 or 2, unless the two data elements are of the same data bit size.
SE0801660A 2008-07-10 2008-07-10 Method of compressing data including transformation via a spiral function SE0801660L (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
SE0801660A SE0801660L (en) 2008-07-10 2008-07-10 Method of compressing data including transformation via a spiral function
PCT/SE2009/000353 WO2010005359A1 (en) 2008-07-10 2009-07-06 Data compression involving spiral transformation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE0801660A SE0801660L (en) 2008-07-10 2008-07-10 Method of compressing data including transformation via a spiral function

Publications (2)

Publication Number Publication Date
SE531833C2 true SE531833C2 (en) 2009-08-18
SE0801660L SE0801660L (en) 2009-08-18

Family

ID=40943368

Family Applications (1)

Application Number Title Priority Date Filing Date
SE0801660A SE0801660L (en) 2008-07-10 2008-07-10 Method of compressing data including transformation via a spiral function

Country Status (2)

Country Link
SE (1) SE0801660L (en)
WO (1) WO2010005359A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113051237B (en) * 2021-03-30 2022-12-09 中国科学院空天信息创新研究院 Compression storage method of time series remote sensing data

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2542875B1 (en) * 1983-03-18 1985-10-04 Thomson Csf METHOD OF ADDRESSING THE MEMORY IN A DIGITAL IMAGE TRANSFORMER
US4967286A (en) * 1988-12-12 1990-10-30 Disctronics Manufacturing, Inc. Method and apparatus for forming a digital image on an optical recording disc
US6064388A (en) * 1997-11-10 2000-05-16 Cognex Corporation Cartesian to polar coordinate transformation
KR101010938B1 (en) * 2006-11-14 2011-01-25 니폰덴신뎅와 가부시키가이샤 Image signal coding method and decoding method, information source coding method and decoding method, devices for them, and memory medium with recorded program

Also Published As

Publication number Publication date
WO2010005359A1 (en) 2010-01-14
SE0801660L (en) 2009-08-18

Similar Documents

Publication Publication Date Title
WO2020047823A1 (en) Convolution over sparse and quantization neural networks
JP6991983B2 (en) How and systems to train machine learning systems
TW202119293A (en) Method and system of quantizing artificial neural network and arti ficial neural network apparatus
EP1519271A3 (en) Disk array device,method of extending storage capacity and computer program
CN108897716B (en) Data processing device and method for reducing calculation amount through memory read-write operation
US20130091189A1 (en) Single datapath floating point implementation of RCP, SQRT, EXP and LOG functions and a low latency RCP based on the same techniques
CN109450731A (en) A kind of test data generating method of application layer communication protocol
SE531833C2 (en) Method of compressing data including transformation via a spiral function
CN110674581B (en) Method and system for accurately judging consistency of digital twin model
EP3631645A1 (en) Data packing techniques for hard-wired multiplier circuits
CN107562608A (en) Resource metrics importance appraisal procedure and device
DeMeyer The Brauer group of a ring modulo an ideal
CN105184372A (en) Knowledge network construction method and apparatus
Greenlees RATIONAL SO (3)-EQUIVARIANT COHOMOLOGY
Schirmer A minimum theorem for n-valued multifunctions
De la Cruz et al. Local Linearization-Runge Kutta (LLRK) methods for solving ordinary differential equations
CN112100453B (en) Character string distribution statistical method, system, equipment and computer storage medium
Wright et al. Teaching real-world DSP using MATLAB
JP7144456B2 (en) Range check
US10416960B2 (en) Check procedure for floating point operations
CN111313905A (en) Floating point number conversion method and device
Marquardt et al. Open Benchmarks for Load Balancing Heuristics in Parallel Adaptive Finite Element Computations.
CN207301982U (en) A kind of computer typing exercising keyboard
US20170193145A1 (en) Selection of an equivalent 1d element type in a destination fea tool for 1d elements in a source fea tool
US7075539B1 (en) Apparatus and method for processing dual format floating-point data in a graphics processing system