SE511461C2 - Data Processing - Google Patents

Data Processing

Info

Publication number
SE511461C2
SE511461C2 SE9700760A SE9700760A SE511461C2 SE 511461 C2 SE511461 C2 SE 511461C2 SE 9700760 A SE9700760 A SE 9700760A SE 9700760 A SE9700760 A SE 9700760A SE 511461 C2 SE511461 C2 SE 511461C2
Authority
SE
Sweden
Prior art keywords
data
camera
unit
information content
analysis system
Prior art date
Application number
SE9700760A
Other languages
Swedish (sv)
Other versions
SE9700760L (en
SE9700760D0 (en
Inventor
Thorleif Josefsson
Original Assignee
Qualisys Ab
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 Qualisys Ab filed Critical Qualisys Ab
Priority to SE9700760A priority Critical patent/SE511461C2/en
Publication of SE9700760D0 publication Critical patent/SE9700760D0/en
Priority to PCT/SE1998/000379 priority patent/WO1998039739A1/en
Priority to AU66435/98A priority patent/AU6643598A/en
Publication of SE9700760L publication Critical patent/SE9700760L/en
Publication of SE511461C2 publication Critical patent/SE511461C2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0007Image acquisition

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

A data processing in a system, preferably a motion analysis system including at least one data collecting device (10, 14, 15, 16, 17), such as a camera unit, comprising means for at least partly processing collected data, said device being connected to a computer unit (13), forming a chain of units, to process said at least partly process data from said data collecting device. Said data collective device (10, 14, 15, 16, 17) is arranged to internally process the data collected by said device into different levels, having different degrees of information content, including a high degree of information content and a low degree of information content, said data collecting devices further including means to receive data from other data collecting devices (10, 14, 15, 16, 17) in said different degrees of information content, whereby a set of data generated in said data collecting device or received from a data collecting device having a high degree of information content, supersedes a data having lower degree of information content before forwarding the processed data in the chain.

Description

l0 15 20 25 30 511 461 2 sätt för att detektera läget av markörema fästa vid föremålet. 10 15 20 25 30 511 461 2 methods for detecting the position of the markers attached to the object.

De system, som används för närvarande, använder en eller flera kameror, som sänder videosignalen till en datorenhet för analys eller bara för delvis bearbetning av videosignalen och sänder sedan den till en datoranordning för analys. Problemet är att när många kameraenheter används accelererar mängden data som sänds till datorenheten väsentligt, vilken belastar datorresurserna. Dessa system tenderar också att bli långsamma allteftersom datarnängden ökar.The systems currently in use use one or more cameras, which send the video signal to a computer unit for analysis or only for partial processing of the video signal and then send it to a computer device for analysis. The problem is that when many camera units are used, the amount of data sent to the computer unit accelerates significantly, which burdens the computer resources. These systems also tend to be slow as the amount of data increases.

KORTFATTAD BESKRIVNING AV UPPFINNINGEN Det är ett ändamål med föreliggande uppfinning att övervinna ovan problem och framställa ett nytt system för snabbare databearbetning och beräkning i allmänhet och ett rörelseanalyssystem i synnerhet för bestämning av positionen av en markör i realtid och genom att använda resursema av varje informationssarnlande enhet, d.v.s. en kamera.BRIEF DESCRIPTION OF THE INVENTION It is an object of the present invention to overcome the above problems and to provide a new system for faster data processing and calculation in general and a motion analysis system in particular for determining the position of a marker in real time and by using the resources of each information unit. , ie a camera.

Det huvudsakliga ändamålet med uppfinningen är att sprida databearbetningen huvudsakligen mellan datasarnlande anordningar och förse, till exempel en värddator i databearbetningskedjan med en väsentligen färdig datamängd. Den ökade prestanda, som erhålles på detta sätt belastar inte värddatom och data transmitterad till och bearbetad av värddatorn kommer att öka dramatiskt, vilket ökar möjligheten för realtidsbearbetning av datorn.The main purpose of the invention is to spread the data processing mainly between data collection devices and to provide, for example, a host computer in the data processing chain with a substantially complete amount of data. The increased performance obtained in this way does not load the host computer and data transmitted to and processed by the host computer will increase dramatically, which increases the possibility of real-time processing of the computer.

Ett annat ändamål med föreliggande uppfinning är att öka precisionen och tillförlitlighet av bearbetad data. Ännu ett annat ändamål med föreliggande uppfinning är att tillhandahålla en ny datatyp för snabb databearbetning.Another object of the present invention is to increase the precision and reliability of processed data. Yet another object of the present invention is to provide a new data type for fast data processing.

Nämnda ändamål uppnås genom att den datasamlande anordningen är anordnad att intemt bearbeta data samlad genom nämnda anordning i olika nivåer, som har olika grader av inforrnationsinnehåll, omfattande en hög grad av informationsinnehåll och en lägre grad av informationsinnehåll, vilka datasamlande anordningar dessutom omfattar organ för att mottaga data från andra datasarnlande anordningar med olika grad av informationsinnehåll, varvid en 10 15 20 25 30 511461 3 uppsättning data genererad i den datasarnlande anordningen eller mottagen från en datasamlande anordning som har en hög grad av inforrnationsinnehåll, ersätter en data som har en lägre grad av informationsinnehåll innan den vidarebefordras av den bearbetade data i kedjan.Said object is achieved in that the data collecting device is arranged to intimately process data collected by said device in different levels, which have different degrees of information content, comprising a high degree of information content and a lower degree of information content, which data collecting devices further comprise means for receiving data from other data collecting devices with different degrees of information content, wherein a set of data generated in the data collecting device or received from a data collecting device having a high degree of information content replaces a data having a lower degree of information content before it is passed on by the processed data in the chain.

I ett föredraget utförande av ett rörelseanalyssystem enligt uppfinningen innefattar en kameraenhet organ för kommunikation med andra kameraenheter och/eller datorenheten, varvid en uppsättning av bearbetad data innefattar olika nivåer av bearbetad data, omfattande en uppsättning med huvudsakligen hög grad av informationsinnehåll och en huvudsakligen låg grad av inforrnationsinnehåll, varvid en uppsättning data genererad i kameraenheten eller mottagen från en karneraenhet som har en hög grad av infonnationsinnehåll ersätter en data som har lägre grad av inforrnationsinnehåll före vidarebefordran av den bearbetade datan i kedjan av enheter.In a preferred embodiment of a motion analysis system according to the invention, a camera unit comprises means for communication with other camera units and / or the computer unit, wherein a set of processed data comprises different levels of processed data, comprising a set with a substantially high degree of information content and a substantially low degree of information content, wherein a set of data generated in the camera unit or received from a recording unit having a high degree of information content replaces a data having a lower degree of information content before transmitting the processed data in the chain of units.

I ett utförande innefattar datauppsättningen med en väsentligen hög grad av infonnationsinnehåll huvudsakligen information om en tredimensionell position av markören i rymden.In one embodiment, the data set with a substantially high degree of information content mainly comprises information about a three-dimensional position of the cursor in space.

I ett annat utföringsexempel enligt uppfinningen innefattar datauppsättningen som har väsentligen en låg grad av inforrnationsinnehåll information om en tvådimensionell punkt i rymden, beskriven som en linje som har riktningskoefficienter Kx, IQ, och diameter <1) av markören och ett fimktionsvärde av (bn.In another embodiment of the invention, the data set having a substantially low degree of information content includes information about a two-dimensional point in space, described as a line having directional coefficients Kx, IQ, and diameter <1) of the cursor and a function value of (bn).

I ännu ett annat utföringsexempel innefattar datauppsättningen dessutom information om en tredimensionell position för markören i rymden, beskriven medelst X-, Y-, Z-koordinater och en index för huvudsakligen två korsande linjer.In yet another embodiment, the data set further comprises information about a three-dimensional position of the cursor in space, described by means of X, Y, Z coordinates and an index of substantially two intersecting lines.

I ett föredraget utförande enligt föreliggande uppfinning omfattar kameraenheten förbehandlingsenheter, buffert, optiskt element och organ för att kommunicera med andra kameraenheter.In a preferred embodiment of the present invention, the camera unit comprises pre-processing units, buffer, optical element and means for communicating with other camera units.

I ett utförande är markören sekventiellt kodad.In one embodiment, the cursor is sequentially encoded.

I ett utförande är väsentligen varje kamera anordnad att generera en lista innehållande linj edata i 10 15 20 30 511461 4 en minnesenhet, vilken lista bearbetas och jämföres med data mottagen från en förgående kamera genom att jämföra de inkommande punktdatan med den eventuellt intemt genererade punktdatan, och uppdatera punktdatan genom att järnföra de inkommande korsdatan med intemt genererad linj edata, som korsar en korsningspunkt, uppdatera korsningsdatan och överföra korsningsdatan för att peka på data i respektive linjedata och jämföra inkommande linj edatan i respektive intemt genererad linj edata. Om två korsningslinj er resulterar i en punkt som har en god tolerans acceptera datan genom att uppdatera punktdatan och/eller generera ett korsningsdata, annars bibehålla linj edatan.In one embodiment, essentially each camera is arranged to generate a list containing line data in a memory unit, which list is processed and compared with data received from a previous camera by comparing the incoming point data with the possibly internally generated point data, and updating the point data by ironing the incoming cross data with internally generated line data, which crosses an intersection point, updating the cross data and transmitting the cross data to point to data in the respective line data and compare the incoming line data in the respective internally generated line data. If two intersection lines result in a point that has a good tolerance, accept the data by updating the point data and / or generating an intersection data, otherwise maintain the line data.

KORT BESKRIVNING AV RITNINGARNA I det följande kommer uppfinningen att beskrivas med referens till bifogade ritningar, i vilka: Fig. 1 visar ett schematiskt diagram av ett enkelt rörelseanalyssystem.BRIEF DESCRIPTION OF THE DRAWINGS In the following, the invention will be described with reference to the accompanying drawings, in which: Fig. 1 shows a schematic diagram of a simple motion analysis system.

F ig. 2 visar schematiskt en bild av en markör och digitala skivor av densamma.F ig. 2 schematically shows an image of a marker and digital discs thereof.

Fig. 3 visar ett schematiskt diagram som visar ett system av datasamlande anordningar, vilka använder metoden enligt föreliggande uppfinning.Fig. 3 shows a schematic diagram showing a system of data collecting devices, which use the method according to the present invention.

Fi g. 4 visar en schematisk vy av koordinatsystemet i ett föredraget utförande.Fig. 4 shows a schematic view of the coordinate system in a preferred embodiment.

Fig. 5 visar ett schematiskt dataflödesdiagram i en föredragen kamera som används i en anordning enligt föreliggande uppfinning.Fig. 5 shows a schematic data flow diagram in a preferred camera used in a device according to the present invention.

Fig. 6 visar ett flödesschema, som schematiskt visar metoden enligt föreliggande uppfinning.Fig. 6 shows a flow chart schematically showing the method of the present invention.

Fig. 7 visar schematiskt ett utförande, som använder metoden enligt föreliggande uppfinning.Fig. 7 schematically shows an embodiment which uses the method according to the present invention.

GRUNDLÄGGANDE TEORI Ett analogt system använder som en insignal huvudsakligen en konventionell videosignal från en kamera. Medelst signalen beräknas X- och Y-koordinaterna för markören, som skiljer sig från omgivningarna genom ljusintensitet. Målet är att mäta en markörrörelse så noggrant som möjligt, d.v.s. onoggrannheten, som är ett resultat av videosignalen bestående av en uppsättning ändliga antal punkter minimeras.BASIC THEORY An analog system uses as an input signal mainly a conventional video signal from a camera. By means of the signal, the X and Y coordinates of the cursor are calculated, which differ from the surroundings by light intensity. The goal is to measure a cursor movement as accurately as possible, i.e. the inaccuracy, which is a result of the video signal consisting of a set of finite number of points is minimized.

Videosignalen består av ett antal linjer, vilka avsökes i kronologisk ordning. En markör genererar en bild, som sträcker sig över en eller flera linjer. Medelst en komparator kan böfian 10 15 20 511 461 5 och slutet av en markörsektion på en linje bestämmas. Markörens bild på en linje kallas ett segment. Tiden uppmättes delvis från början av linjen till början av segmentet (XS) och delvis från början av linjen till slutet av segmentet (XC). Medelvärdet av dessa två perioder är ett mått för positionen av ett segment i utrymmet, i horisontell riktning (om linjerna är horisontella) medan serienumret (S) för linjen är ett mått för läget av segmentet i den vertikala riktningen.The video signal consists of a number of lines, which are scanned in chronological order. A cursor generates an image, which extends over one or more lines. By means of a comparator the bend and the end of a marker section on a line can be determined. The cursor image on a line is called a segment. The time was measured partly from the beginning of the line to the beginning of the segment (XS) and partly from the beginning of the line to the end of the segment (XC). The average of these two periods is a measure of the position of a segment in space, in the horizontal direction (if the lines are horizontal) while the serial number (S) of the line is a measure of the position of the segment in the vertical direction.

Längden I av segmenten är då Xe-Xs.The length I of the segments is then Xe-Xs.

Mittpunkten för markören kan tillhandahållas som en beräknad gemensam mittpunkt för alla segment som är en del av markören (bilden), där X- och Y-koordinatema för markören, Xm respektive Ym, erhålles genom formlema 1 och 2: Z (Xg-Xs) å (Xetxs) X =----- (1) m Z (Xe "Å/s) Tecknet 2 indikerar att summeringen utföres över alla segmenten, som är en del av Y = 2((Xe'Xg) - S) (2) '” E ere-XS) markörbilden.The center of the cursor can be provided as a calculated common center of all segments that are part of the cursor (image), where the X and Y coordinates of the cursor, Xm and Ym, respectively, are obtained by formulas 1 and 2: Z (Xg-Xs) å (Xetxs) X = ----- (1) m Z (Xe "Å / s) The sign 2 indicates that the summation is performed over all segments, which are part of Y = 2 ((Xe'Xg) - S) (2) '”E ere-XS) the cursor image.

Ovanstående är lämplig för en analog signal. Liknande beräkningar kan utföras om bildpunkter fi-ån en digital detektor överförs till en arman ordning än linjär. Där beräknas mittpunktema för alla bildelement som är en del av samma markör. Först kan bildelementet översättas till linjer och sedan kan beräkning utföras, enligt det analoga fallet.The above is suitable for an analog signal. Similar calculations can be performed if pixels fi- from a digital detector are transferred to a poorer order than linear. There, the midpoints of all pixels that are part of the same cursor are calculated. First, the pixel can be translated into lines and then calculation can be performed, according to the analog case.

Tidpunktema XS och Xe kan mätas med en elektronisk räknaranordning ansluten till en oscillator.The times XS and Xe can be measured with an electronic counter device connected to an oscillator.

Råknaren startar i början av linjen och avläses när början och slutet av ett segment nås. Ett problem är att oscillatorfrekvensen, på grund tekniska eller ekonomiska orsaker är begränsad. I (Ju 10 511 461 6 En komparator är anordnad för att övervinna detta problem i det analoga fallet, vilken starter en integrator, vilken genererar en linjär potentialramp, som starter från en potential V, till Vb vid tiden XS. Rampen samplas sedan och mäts när räknaren slår om mellan två värden. Punkten när rampen passerar ett förutbestämt tröskelvärde används för att definiera tiden XSS. Skillnaden mellan XS och Xss är en konstant och den bestäms av integratorn och fördröjningarna i komparatom. Tiden XSS beräknas med lätthet från de uppmätta punkterna på potentialrarnpen vid tiden för omslag av räknaren förutsatt att åtminstone två punkter på rampen är uppmätta. Om till exempel två värden uppmäts, V, vid t, och V2 vid t: och V0 är mellan V, och V2, interpoleras XSS via formel 3: -L (12 -f1).(V0 _ V1) X = f 1 Vz-Vl ss (3) Tiden X, uppmäts på samma sätt. l detta utförande används en linjär ramp, eftersom beräkningarna blir enklare, emellertid kan andra kurvor förekommer.The tracker starts at the beginning of the line and is read when the beginning and end of a segment are reached. One problem is that the oscillator frequency, due to technical or economic reasons, is limited. A comparator is arranged to overcome this problem in the analog case, which starts an integrator, which generates a linear potential ramp, which starts from a potential V, to Vb at time XS. The ramp is then sampled and measured when the counter switches between two values.The point when the ramp passes a predetermined threshold value is used to define the time XSS.The difference between XS and Xss is a constant and it is determined by the integrator and the delays in the comparator.The time XSS is easily calculated from the measured points on potential rnpen at the time of reversing the counter provided that at least two points on the ramp are measured, for example if two values are measured, V, at t, and V2 at t: and V0 are between V, and V2, XSS is interpolated via formula 3: - L (12 -f1). (V0 _ V1) X = f 1 Vz-Vl ss (3) The time X, is measured in the same way. In this embodiment a linear ramp is used, as the calculations become simpler, however, other curves may occur.

Bildelementen kan utformas i linjer medelst ett lågpassfilter för att åstadkomma en viss kontinuerlig signal, som kan bearbetas som den analoga signalen. Emellertid uppmäts i det föredragna utföringsexemplet varje bildelement individuellt och från det uppmätta värdet interpoleras ett värde som bestämmer när ett tröskelvärde T passeras.The pixels can be formed in lines by means of a low-pass filter to produce a certain continuous signal, which can be processed as the analog signal. However, in the preferred embodiment, each pixel is measured individually and from the measured value a value is interpolated which determines when a threshold value T is passed.

Den digitaliserade signalen överförs till en komparatorenhet, vilken interpolerar individuella testvärden omkring ett förutbestämt tröskelvärde T, även kallat videonivå. Såsom beskrevs här ovan är ändamålet att bestämma när signalarnplituden passerar värdet T. Varje passage visar en start- och ändkoordinat för varje segment med en hög upplösning, vilken kan vara omkring 30 x antal bildpunkter på en rad. I en beräkningsenhet utföres följ ande beräkning: T- V1 V2- V1 = bíldpunkrsnr. + (4) Xhögupplösníng 511 461 Där V1 och V2 är signalnivåer för föregående resp. efierfölj ande bildpunkter erhållna från komparatom. 5 Här kan forrnel 4 betraktas som ett specialfall av fonnel 3.The digitized signal is transmitted to a comparator unit, which interpolates individual test values around a predetermined threshold value T, also called video level. As described above, the purpose is to determine when the signal amplitude exceeds the value T. Each passage shows a start and end coordinate for each segment with a high resolution, which may be about 30 times the number of pixels in a row. In a calculation unit, the following calculation is performed: T- V1 V2- V1 = image point no. + (4) Xhigh resolution 511 461 Where V1 and V2 are signal levels for previous resp. e fi follow pixels obtained from the comparator. Here, form 4 can be considered as a special case of form 3.

Bildpunktsnurnret kan erhållas från en räknare (inte visad). Beroende av komponenterna som används kan nivåerna V, och V2 mätas med en upplösning av 10 bitar, bildpunktsnumret (MSB) 9 bitar och (T-VQ/(Vz-Vl) 7 bitar. Sedan kan mittpunkten x' av markören beräknas i en 10 beräkningsenhet medelst föregående värde lagrat i en minnesenhet, genom användning av formel (5)1 If: 202.59 (S) 21,2' Ecfïs yU-i- <6) n 21k där 1,, är längden av segmentet k (d.v.s., Xek-Xsk), S är serienumret för bildelementet, och ik är mittpunkten av segmentet k. 15 I detta fall, det digitala fallet, är formlerna (1) och (2) ersatta med forrnlerna (5) respektive (6).The pixel number can be obtained from a calculator (not shown). Depending on the components used, levels V1 and V2 can be measured with a resolution of 10 bits, the pixel number (MSB) 9 bits and (T-VQ / (Vz-V1) 7 bits. calculation unit by means of the preceding value stored in a memory unit, by using formula (5) 1 If: 202.59 (S) 21,2 'Ecfïs yU-i- <6) n 21k where 1 ,, is the length of the segment k (ie, Xek -Xsk), S is the serial number of the pixel, and ik is the midpoint of the segment k. In this case, the digital case, the formulas (1) and (2) are replaced by the formulas (5) and (6), respectively.

Emellertid bidrar inte fonnlerna (1) och (2) ensamma till erhållande av ett noggrant värde såsom önskas. För att erhålla en mer exakt, stabil x' med och hög resolution beräknas n potensen av Ik. I ett föredraget utíöringsexempel beräknas roten ur Ik, d.v.s. n=2. 20 10 15 20 25 511 461 8 Sedan kan lkzema lagras i en minnesenheten för att underlätta beräkningar. För, Lex. en cirkulär markör, beräknas arean A av avbildningen genom att använda formeln A = 21,, Det är även möjligt att beräkna radien genom att använda A= rz *1t, vilken ger formel (7): fajzlk (v), TC som kan beräknas i beräkningsenheten.However, the forms (1) and (2) alone do not contribute to obtaining an accurate value as desired. To obtain a more accurate, stable x 'with and high resolution, the power of Ik is calculated. In a preferred embodiment, the root is calculated from Ik, i.e. n = 2. 20 10 15 20 25 511 461 8 Then the bodies can be stored in a memory unit to facilitate calculations. For, Lex. a circular marker, the area A of the image is calculated using the formula A = 21 ,, It is also possible to calculate the radius using A = rz * 1t, which gives formula (7): fajzlk (v), TC which can be calculated in the calculation unit.

Med hänvisning nu till fig. 4, vilken schematiskt visar ett princip för positionering av föremålet ll kan X-, Y- och Z-koordinater beräknas enligt följande beskrivning.With reference now to fi g. 4, which schematically shows a principle for positioning the object II, X, Y and Z coordinates can be calculated according to the following description.

Följande är känd data: 3 'J x ,y mitten av markörbilden 26 på ett detektorplan 28, d.v.s. på CCD, beräknade genom att använd formel 5 och 6; c avståndet från detektorplanet 28 till linsen 18; X0,Y0 mitten av detektorplanet, som motsvarar mitten av linsen, vilka är kamerakonstanter; D markörens ll diameter.The following are known data: 3 'J x, y the center of the cursor image 26 on a detector plane 28, i.e. on CCD, calculated using formulas 5 and 6; c the distance from the detector plane 28 to the lens 18; X0, Y0 the center of the detector plane, which corresponds to the center of the lens, which are camera constants; D ll diameter of the marker.

I beräkningsenheten beräknas följ ande parametrar: rg, Xo-xfl d.v.s. X-koordinaten för markörbilden på detektorplanet relativt mitten av detektorplanet; yp Y0-y', d.v.s. Y-koordinat för markörbilden på detektorplanet relativt mittpunkten av detektorplanet; och d r x 2, där r är radien enligt ovan.In the calculation unit, the following parameters are calculated: rg, Xo-x fl i.e. The X-coordinate of the cursor image on the detector plane relative to the center of the detector plane; yp Y0-y ', i.e. Y-coordinate of the cursor image on the detector plane relative to the center of the detector plane; and d r x 2, where r is the radius as above.

Eftersom trianglama B och Ai Fig. 4 är likformiga existerar även följande förhållande: Xm/ig, = Ym/yp = Zm/c = Dm/d, vilket möjliggör följande beräkningar i enheten: 10 15 20 511461 9 D Xnfïmxp (s) D Ym =_áç'-yp z", »le (1 o) Där Xm, Ym och Zm är den tredimensionella positionen (vektorkomponenter) för markören och i synnerhet avståndet mellan kameran (linsen) och föremålet.Since the triangles B and Ai Fig. 4 are uniform, the following relationship also exists: Xm / ig, = Ym / yp = Zm / c = Dm / d, which enables the following calculations in the unit: D Xnfïmxp (s) D Ym = _áç'-yp z ",» le (1 o) Where Xm, Ym and Zm are the three-dimensional position (vector components) of the cursor and in particular the distance between the camera (lens) and the object.

DEFINITIONER För att förenkla förståelsen för följande beskrivning används följ ande termer som har specifika definitioner.DEFINITIONS To simplify the understanding of the following description, the following terms are used that have specific definitions.

Utsända Adresseringssätt som används för adressering av alla enheter samtidigt.Broadcast Addressing method used to address all devices simultaneously.

Ram Infonnation om positionen av föremålet i två- eller tredimension och andra parametrar väsentligen samlade vid ett sanilingstillfälle.Frame Information on the position of the object in two or three dimensions and other parameters essentially gathered at a sanitation occasion.

Punktdata En tredimensionell position för en marköranordning i rymden, beskriven medelst X-, Y-, Z-position och Q-tolerans. Punktdata representerar korsningspunkten för tre linjer i rymden.Point data A three-dimensional position of a marker device in space, described by means of X-, Y-, Z-position and Q-tolerance. Point data represents the intersection point of three lines in space.

Korsdata En tredimensionell position för en marköranordning i rymden, beskriven medelst X-, Y-, Z-koordinater och en index för huvudsakligen två korsande linjer. Denna data kan inte omvandlas till en punktdata.Cross data A three-dimensional position of a cursor device in space, described by means of X, Y, Z coordinates and an index for mainly two intersecting lines. This data cannot be converted to a point data.

Ytterligare en korsningslinje bidrar till en pålitlig punktbestärrming. 10 15 20 25 30 511 461 10 Linjedata En tvådimensionell punkt i rymden beskriven som en linje som har riktningskoefficienter Kx, Ky, Kï, och diameter d) för markören och ett fimktionsvärde av d), och d), (maximum och minimum för (1)) och identitetsnurnret för den detekterande anordningen (kameran), vilken har upptäckt anordningen.Another intersection line contributes to a reliable point determination. 10 15 20 25 30 511 461 10 Line data A two-dimensional point in space described as a line having directional coefficients Kx, Ky, Kï, and diameter d) for the cursor and a function value of d), and d), (maximum and minimum for ( 1)) and the identity number of the detecting device (camera), which has detected the device.

Den kan även beskrivas medelst ABC och DEF, där ABC är en ändpunktskoordinat på linjen, DEF är en annan ändpunktskoordinat på linjen, där CzF Ramhuvud Ramnummer och en kontrollsumrna.It can also be described by ABC and DEF, where ABC is an endpoint coordinate on the line, DEF is another endpoint coordinate on the line, where CzF Framehead Frame number and a checksum.

DETALJERAD BESKRIVNING AV ETT UTFÖRINGSEXEMPEL Ett enkelt schematiskt system illustreras i fig. 1. Systemet omfattar en kameraenhet 10 riktad mot ett föremål, i detta fall en märmiskokropp 12 som ska analyseras och en eller flera markörer ll fästa vid föremålet 12.DETAILED DESCRIPTION OF AN EMBODIMENT A simple schematic system is illustrated in fi g. The system comprises a camera unit 10 directed towards an object, in this case a mermaid body 12 to be analyzed and one or more markers ll attached to the object 12.

Kameran 10 kan vara ansluten till en värddator 13 för att ytterligare bearbeta data mottagen från kameran 10.The camera 10 may be connected to a host computer 13 to further process data received from the camera 10.

Fig. 3 visar en applikation som använder fyra kameror 14, 15, 16 och 17, Den incirklade delen i fig. 3, visar schematiskt delar inkluderade i kameran, ett optiskt element, såsom en lins 18 eller andra fokuseringsorgan, en ljusdetektor såsom en CCD-detektor, förbehandlingsenhet 19 och bearbetningsenhet 20 tör bearbetning av videosignaler.Fig. 3 shows an application using four cameras 14, 15, 16 and 17, The encircled part in fi g. 3, schematically shows parts included in the camera, an optical element, such as a lens 18 or other focusing means, a light detector such as a CCD detector, pre-processing unit 19 and processing unit 20 for processing video signals.

En kameraenhet är företrädesvis anordnad för att framställa ramar, d.v.s. en datarepresentation av bilden som omfattar markörer.A camera unit is preferably arranged to produce frames, i.e. a data representation of the image that includes markers.

Varje kamera är anordnad med en IN- och UT-port för att ansluta kamerorna och annan utrustning, såsom datom 13. Följaktligen är den första karneran 14 genom dess UT-port ansluten till IN-porten av den andra kamera 15, som i sin tur är ansluten till den tredje 16 kameran o s v. 10 15 20 25 30 511 461 ll Den sista kameran 17 i kedjan kan genom dess UT-port eller annan dataport av känd typ direkt eller via en I/O-enhet 21 anslutas till värddatom.Each camera is provided with an IN and OUT port for connecting the cameras and other equipment, such as the computer 13. Consequently, the first core 14 is connected through its OUT port to the IN port of the second camera 15, which in turn is connected to the third 16 camera os v. 10 15 20 25 30 511 461 ll The last camera 17 in the chain can be connected directly to the host computer through its OUT port or other data port of known type or via an I / O unit 21.

Sammanfattningsvis producerar alla kameror ramar, vilka är bilder av upptäckta markörer.In summary, all cameras produce frames, which are images of detected markers.

Eftersom varje kamera "ser" en markör från en speciell vinkel är de framställda ramarna olika.Because each camera "sees" a marker from a particular angle, the frames produced are different.

Bearbetningsenheten 20 av varje kamera bearbetar varje ram för att bestämma positionen för vafle markör (om flera). Varje kamera bearbetar och producerar en uppsättning data, som huvudsakligen omfattar punktdata, linj edata och korsdata, såsom definierades härovan.The processing unit 20 of each camera processes each frame to determine the position of each marker (s). Each camera processes and produces a set of data, which mainly includes point data, line data and cross data, as defined above.

Bearbetningsenheten av varje kamera är ansluten till bearbetningsenheten av en Förgående kamera (eller till datom eller I/O-enheten, om den är den sista kamera i kedjan). Således bearbetar varje bearbetningsenhet ramen av dess egen och ramen mottagen från den föregående kameran om speciella kriterier är uppfyllda, vilka kommer att beskrivas senare. Slutligen mottagar datom bearbetad data och undviker ytterligare bearbetning av hela den mottagna datan.The processing unit of each camera is connected to the processing unit of a Previous camera (or to the computer or I / O unit, if it is the last camera in the chain). Thus, each processing unit processes the frame of its own and the frame received from the previous camera if special criteria are met, which will be described later. Finally, the computer receives processed data and avoids further processing of the entire received data.

Fig. 5 är ett schematiskt blockaddiagrarn av ett utförande av databearbetningsenheten 20.Fig. 5 is a schematic block diagram of an embodiment of the data processing unit 20.

Databearbetningsenheten 20 omfattar en första IN-buffert 22, en databerälmingsenhet 23, en efierbearbetningsenhet 24, en andra IN- buffert 25, en UT-buffert 29 och en meddelandehanteringsenhet 30. Bufferten 22 är ansluten till en forbehandlingsenhet 19.The data processing unit 20 comprises a first IN buffer 22, a data processing unit 23, a processing unit 24, a second IN buffer 25, an OUT buffer 29 and a message handling unit 30. The buffer 22 is connected to a pre-processing unit 19.

Förbehandlingsenheten 19 kan vara en videobearbetningsenhet.The pre-processing unit 19 may be a video processing unit.

Förbehandlingsenheten 19, IN-bufferten 22, databerälmingsenheten 23, efierbearbetningsenheten 24, den andra IN-bufferten 25 och UT-bufferten 29 sammankopplas medelst en databuss, t.ex. av ISA typ.The pretreatment unit 19, the IN buffer 22, the data debris unit 23, the processing unit 24, the second IN buffer 25 and the OUT buffer 29 are interconnected by means of a data bus, e.g. of ISA type.

Från förbehandlingsenheten 19 är en signal ansluten till databearbetningsenheten 20 genom bufferten 22. I en förbehandlingsenhet 19 bearbetas videosignalen och en tvådimensionell koordinat bestäms. En ram omfattande tvådimensionell data (2D), omfattande x, y, (bh cbz och i genereras och sänds till databearbetningsenheten 20. Parametrama x och y är 2D-koordinaterna (karneraskala) enligt formel 5 och 6, (b, och (I), max resp. min radier av markören enligt formel 7 och i är intensitetsparametem for bilden 26. (b, och (b, värden erhålles genom en rundhetskontroll som beskrivs i den svensk patentansökan nr. 9700065-7 och i regel beror på 10 15 20 25 30 511 461 12 ljusintensiteten mottagen från markören, vilket kan vara beroende av blixtintensiteten och ljusreflektionen från markören. Bearbetningsenheten omfattar dessutom beräkningsenheten 23, som bearbetar data enligt flödesschemat i fig. 6, Första indatan 100 bearbetas först, 101, för linskorrektion genom att utföra följande ekvation: x = (x°-x1)(K1*a2+K2*a“) y = (y'-y1)(K1*a2+K2*a“) az= (><°-X,)2+(y'-yi)2 där x, och y, representerar en bottenpunkt för linskorrektionen och K, och Kl är koefficienter levererade från en kalibreringsprocess 102.From the pre-processing unit 19, a signal is connected to the data processing unit 20 through the buffer 22. In a pre-processing unit 19, the video signal is processed and a two-dimensional coordinate is determined. A frame comprising two-dimensional data (2D), comprising x, y, (bh cbz and i is generated and sent to the data processing unit 20. The parameters x and y are the 2D coordinates (square scale) according to formulas 5 and 6, (b, and (I) , max and min radii of the marker according to formula 7 and i are the intensity parameters for the image 26. (b, and (b, values are obtained by a roundness check which is described in the Swedish patent application no. 9700065-7 and as a rule depends on 10 15 20 The processing unit further comprises the calculating unit 23, which processes data according to the fate scheme in Fig. 6, The first input data 100 is first processed, 101, for lens correction by performing lens correction. the following equation: x = (x ° -x1) (K1 * a2 + K2 * a “) y = (y'-y1) (K1 * a2 + K2 * a“) az = (> <° -X,) 2 + (y'-yi) 2 where x, and y, represent a bottom point for the lens correction and K, and K1 are coefficients delivered from a calibration process 102.

Sedan utföres en diameterkorrigering, 103, genom användning av parametrar xm, ym, 12, 13 och 14, där hänsyn tas till påverkan av ljusintensitetsdistributionen i rymden, d.v.s. ljusblixtintensiteten om en sådan används. Där xm, ym är baspunkterna för diameterjusteringen och 12, 13 och 1, konstanter. Resultatet är (V, och (V2, d.v.s. den korrigerade cb . Diametervärdet kan korrigeras för känt statiskt felbidrag, såsom ljusintensitet och otillräcklig fokusering.Then, a diameter correction, 103, is performed using parameters xm, ym, 12, 13 and 14, taking into account the influence of the light intensity distribution in space, i.e. the light flash intensity if one is used. Where xm, ym are the base points for the diameter adjustment and 12, 13 and 1, constants. The result is (V, and (V2), i.e. the corrected cb. The diameter value can be corrected for known static error contribution, such as light intensity and insufficient focus.

Sedan utförs en intern beräkning: X" = Dm* (X-Xo)/<1>n Yn = Dm* (y-yà/dn Zn = Dm* c/cbn där Dm = D/d = (markördiarneteÛ/(bilddiarneter), (bn är antingen (b, eller (b, och c är en kamerakonstant, som beskrevs i "grundläggande teorin". För varje (bn, där n = 1 eller 2, erhålles en ändpunkt motsvarande ändpunktskoordinatema ABC och DEF.Then an internal calculation is performed: X "= Dm * (X-Xo) / <1> n Yn = Dm * (y-yà / dn Zn = Dm * c / cbn where Dm = D / d = (marker diarneteÛ / (image diarnetes ), (bn is either (b, or (b, and c, and c is a camera constant, as described in the "basic theory"). For each (bn, where n = 1 or 2, an endpoint corresponding to the endpoint coordinates ABC and DEF is obtained.

Ytterligare en beräkning för att transfonnera koordinatema utföres vid 104 för att åstadkomma ett gemensamt koordinatsystem för kameraenheterna, som ger data i följande forrn: X(t)=K,.t+fnx Y(:)=K,.t+n1y z(t)=1g.:+m,, där t är t(D/d°) [t=0 för karnerapositionen] l0 15 20 25 30 511461 13 K är en konstant och m är linsens positionskoordinat.A further calculation to transpose the coordinates is performed at 104 to provide a common coordinate system for the camera units, which gives data in the following forms: X (t) = K, .t + fnx Y (:) = K, .t + n1y z ( t) = 1g.: + m ,, where t is t (D / d °) [t = 0 for the core position] 10 is a constant and m is the position coordinate of the lens.

I detta steg transfonneras riktningskoefficienten för linjen till ett globalt system, innehållande positionen för punkten på linjen som argument. Rundhetskontrollen eller värdet av cb ger två ändpunktskoordinater di, och d>°2 för linjen.In this step, the coefficient of direction of the line is transformed into a global system, containing the position of the point on the line as an argument. The roundness check or the value of cb gives two endpoint coordinates di, and d> ° 2 for the line.

Rarndata mottagen 106 från en föregående kameraenhet, d.v.s. om kameran inte är först i kedjan, kommer att bearbetas i den aktuella kameran. Varje kamera genererar en lista huvudsakligen innehållande linjedata i en minnesenhet. Sedan bearbetas listan och jämförs, 105, med den mottagna datan i efterbearbetningsenheten 24, genom: - att jämföra de inkommande punktdatan med den internt genererade linj edatan, om det förekommer någon, och uppdatera punktdatan, som har samma koordinater.Burn data received 106 from a previous camera unit, i.e. if the camera is not first in the chain, will be processed in the current camera. Each camera generates a list mainly containing line data in a memory device. Then the list is processed and compared, 105, with the received data in the post-processing unit 24, by: - comparing the incoming point data with the internally generated line data, if any, and updating the point data, which has the same coordinates.

- Järnföra den inkommande korsdatan med internt genererad linj edata och eliminera linjer som sammanfaller med känd korsdata eller korsande korsningspunkten och uppdatera korsdatan och om möjligt och överföra korsningsdata för att peka ut data i respektive linjen data.- Iron the incoming cross data with internally generated line data and eliminate lines that coincide with known cross data or the crossing point and update the cross data and if possible and transfer cross data to point out data in the respective line data.

- Järnföra den inkommande linjedatan i respektive internt genererade linj edata. Om två korsningslinj er resulterar i en punkt som har en god tolerans med avseende på denna genererad korsningsdata, annars bibehålla linjedatan.- Iron the incoming line data in the respective internally generated line data. If two intersection lines result in a point that has a good tolerance with respect to this generated intersection data, otherwise maintain the line data.

I kameran, vilken direkt eller indirekt genom I/O-anordningen är ansluten till värddatom 13, sker en uppskattning av ensamma linjer, deras (bn och D för att bestämma huruvida de kan transformeras till en punktdataforrn eller inte.In the camera, which is connected directly or indirectly through the I / O device to the host atom 13, an estimate is made of single lines, their (bn and D) to determine whether they can be transformed into a point data form or not.

Varje ram är försedd med ett rarnhuvud. Om den inkommandea ramen har ett högt nummer betyder det att en ram har förlorats under kommunikationen med den föregående kameran. Sedan sänds kamerans egna ram till nästa kamera som en linjedata. Om den inkommande ramen har ett lägre nummer betyder det att en ram har förlorats i kommunikationen mellan förbehandlingsenheten 19 och databearbemingserilieten 20 och ramen sänds till nästa kamera.Each frame is provided with a runner head. If the incoming frame has a high number, it means that a frame has been lost during communication with the previous camera. Then the camera's own frame is sent to the next camera as a line data. If the incoming frame has a lower number, it means that a frame has been lost in the communication between the pre-processing unit 19 and the data processing seriality 20 and the frame is sent to the next camera.

I databearbetningsenheten 20 är IN- och UT-buffertar, 25 respektive 29 anordnade för att buffra 10 15 20 25 30 511 461 14 den inkommande och utgående datan, d.v.s. meddelande från de föregående och till de efterföljande enheterna. Meddelandehanteringsorganet 30 är anordnat för att hantera identiteten och adresser i meddelanden.In the data processing unit 20, the input and output buffers, 25 and 29, respectively, are arranged to buffer the incoming and outgoing data, i.e. message from the previous and subsequent units. The message handling means 30 is arranged to handle the identity and addresses in messages.

Databearbetningsenheten 20 bearbetar ramarna i tidsordning. Om det inte finns tillräckligt tid för att hantera ramarna köas ramarna är IN-buffertama 22, 25 och 29 och bearbetas så snart som möjlig. Om lagringsplatsen inte är tillräckligt skrivs företrädesvis de äldsta datan över eller datahämtning fördröjs.The data processing unit 20 processes the frames in chronological order. If there is not enough time to handle the frames, the frames are queued, the IN buffers are 22, 25 and 29 and are processed as soon as possible. If the storage space is not sufficient, preferably the oldest data is overwritten or data retrieval is delayed.

I ett föredraget system kan instruktionsuppsättning som kontrollerar varje kameraenhet användas (med någon modifiering) i värddatom för att utföra samma process som i kameraenhetema.In a preferred system, instruction sets that control each camera unit can be used (with some modification) in the host atom to perform the same process as in the camera units.

I ett utförande sänts alla meddelanden (ramar) mellan de anslutna enheterna från punkt till punkt, d.v.s. varje databearbetningsenhet 20 måste först mottaga ett meddelande och sedan avgöra att bearbeta det eller sända det vidare.In one embodiment, all messages (frames) are sent between the connected devices from point to point, i.e. each data processing unit 20 must first receive a message and then decide to process it or forward it.

Meddelandeöverföringstirningen i ett föredraget utförande är enligt följ ande. Enheten, som sänder ett meddelande väntar på ett kvitteringsmeddelande (ACK) inom Tommi om transmissionen var lyckad armars upprepas meddelandet ett förutbestärnt antal gånger innan kommunikationen antas misslyckat och ett felmeddelande genereras, vilket sändes till den sista kameran 17 i kedjan och även till värddatom 13. Om en mottagare av ett meddelande upptäcker att meddelandet inte år riktigt sänds ett negativt ACK (NACK) till sändaren, d.v.s. en anmodan för en omsändning. Tidsschemat är enligt följ ande: Tomsänd = Tmedd + Cfördröj + TCmedd där C fómmj är fördröj ningstiden i varje kamera, Tmdd är överföringstiden för ett meddelande, Tcmedd är överföringstiden för ACK/NACK, och T Omsánd time-out vid omsändning av ett meddelande.The message transmission control in a preferred embodiment is as follows. The device that sends a message waits for an acknowledgment message (ACK) within Tommi if the transmission was successful, the message is repeated a predetermined number of times before the communication is assumed to fail and an error message is generated, which is sent to the last camera 17 in the chain and also to the host atom 13. If a recipient of a message discovers that the message is not correct, a negative ACK (NACK) is sent to the sender, ie. a request for a retransmission. The time schedule is as follows: Empty = Tmedd + C delay + TCmedd where C fómmj is the delay time in each camera, Tmdd is the transmission time of a message, Tcmedd is the transmission time of ACK / NACK, and T Circular time-out when transmitting a message.

Max totaltid för ett meddelande är: Cnr. x (Cförüój + 3 Tomsänd) 10 15 20 25 30 511 461 15 där CM är antal ingående enheter (kamera, dator).Maximum total time for a message is: Cnr. x (Cförüój + 3 Tomsänd) 10 15 20 25 30 511 461 15 where CM is the number of input units (camera, computer).

När systemet, som omfattar en eller flera kameror och företrädesvis en värddator 13, startar kan följ ande operationer utföras: - initiering och självkontroll av kamerorna, - adressering, - synkronisering, och - kalibrering. lnitiering och lämpliga sj älvkontroller av kameran utförs av den motsvarande databearbemingsenheten 20 efter tillslag. Instruktionerna kan lagras i en minnesenhet (BIOS) av databearbetningsenheten 20. Sj älvkontrollen genomför kontroll av kommunikationsportar, mínnesenheter och delar väsentliga för funktionen.When the system, which comprises one or more of your cameras and preferably a host computer 13, starts, the following operations can be performed: - initialization and self-control of the cameras, - addressing, - synchronization, and - calibration. Initiation and appropriate self-checks of the camera are performed by the corresponding data processing unit 20 after switching on. The instructions can be stored in a memory unit (BIOS) of the data processing unit 20. The self-control performs control of communication ports, memory units and parts essential for the function.

Under starten kontrollerar varje kameraenhet den lN-/UT-portarna för kommunikation. Om en UT-anslutning inte finns så är kameran sist i kedjan och erhåller, till exempel adress 1 (decimal).During startup, each camera unit checks the lN / OUT ports for communication. If an OUT connection is not found, the camera is last in the chain and receives, for example, address 1 (decimal).

Kamera l (Cl) sänder ett adressmeddelande till nästa kameran i kedjan, vilken antar adress 2, o.s.v. Cl kontrollerar kommunikationen med varje enhet i kedjan genom avsökning för att rätta adresserna och utsänder adressen, som är ett meddelande sänt från Cl till alla kameror i kedjan och den sista kameran svarar med en ACK.Camera 1 (Cl) sends an address message to the next camera in the chain, which assumes address 2, and so on. Cl checks the communication with each unit in the chain by scanning to correct the addresses and sends the address, which is a message sent from Cl to all the cameras in the chain and the last camera responds with an ACK.

Synkroniseringen av varje kamera utförs från den sista enheten (Cm) närmast värddatom. Syftet med synkronjseringen är att se till att varje ram frarnställd av varje kamera är exponerad och märkt samtidigt. Vanligtvis startar ett startkommando från värddatom synkroniseringen.The synchronization of each camera is performed from the last device (Cm) closest to the host atom. The purpose of synchronization is to ensure that each frame produced by each camera is exposed and labeled at the same time. Usually a start command from the host atom starts the synchronization.

Startkommandot inställer huvudsakligen alla kameroma i startläge. F öreträdesvis genereras startkommandot för framställande av ramarna av Cl.The start command essentially sets all the cameras in start mode. Preferably, the start command for generating the frames is generated by Cl.

Med kalibrering menas reglering mellan "verkligheten" och de aktuella skärpe- och diafragmainställningar, som används för tillfället. Kalibreringen är avsedd att kompensera, t.ex. för linsdistorsion, varierande ljusintensiteter inom en mätningsvolym och erhålla information om en metrisk skala för markörer och tvinga alla kameroma att använda ett gemensamt Ur 10 15 20 25 30 511461 16 koordinatsystem.Calibration means regulation between "reality" and the current focus and aperture settings currently in use. The calibration is intended to compensate, e.g. for lens distortion, varying light intensities within a measurement volume and obtaining information on a metric scale for markers and forcing all cameras to use a common coordinate system.

När en ram genereras av forbehandlingsenheten 19 buffras den för att användas av databearbetningsenheten 20, till exempel genom att sätta en avbrottssignal.When a frame is generated by the pre-processing unit 19, it is buffered for use by the data processing unit 20, for example by setting an interrupt signal.

Databearbetningsenheten 20 hämtar ramarna genom databussen 31 och ställer dem i en väntekö.The data processing unit 20 picks up the frames through the data bus 31 and places them in a waiting queue.

Både bearbetnings- och forbehandlingsenheterna kan köa ramarna.Both the processing and pre-treatment units can queue the frames.

Exemplet enligt fig. 7 visar schematiskt detekteringen av två markörer l la och llb av tre sammarikopplade kameror 32, 33 och 34. Karnerornas synfält indikeras medelst streckade linjer.The example according to Fig. 7 schematically shows the detection of two markers 11a and 11b of three interconnected cameras 32, 33 and 34. The field of view of the cores is indicated by dashed lines.

Kamera 32 "ser" markör lla och llb och producerar en linjedata, vilken sänds till kameran 33.Camera 32 "sees" markers 11a and 11b and produces a line data, which is sent to the camera 33.

Kamera 33 ser också markören och linj datan transfonneras till en korsningsdata for markörer.Camera 33 also sees the cursor and the line data is transformed into an intersection data for markers.

Kamera 34 ser bara markör 1 la och producerar en punktdata for markör l1a och sänder korsningsdata for markör 1 lb till en annan kamera eller värddatorn 13.Camera 34 sees only cursor 11a and produces a point data for cursor 11a and sends crossing data for cursor 1b to another camera or host 13.

Ytterligare en fördel med föreliggande uppfinning är enkelheten att använda en standard datafonn for kommunikation. Dessutom är transformering till rymdkoordinatsystem genom användning av metrisk skala är lätt genom användning av dataformen enligt uppfinningen. Ett ytterligare kännetecken for uppfinningen är att den kan konstrueras modulärt, vilket gör det möjligt att öka eller minska antalet inkluderade komponenter på ett enkelt sätt. Även om vi har beskrivit och visat föredragna utforingsexempel, så är uppfinningen inte begränsad till nämnda utföringsexempel, utan variationer och modifieringar kan inom omfånget for de bifogade patentkraven förekomma.Another advantage of the present invention is the simplicity of using a standard data form for communication. In addition, transformation into spatial coordinate systems using metric scale is easy by using the data form of the invention. A further feature of the invention is that it can be constructed modularly, which makes it possible to increase or decrease the number of included components in a simple manner. Although we have described and shown preferred embodiments, the invention is not limited to said embodiments, but variations and modifications may occur within the scope of the appended claims.

Karneraenhetema kan t.ex. ersättas av radarenheter eller liknande. Även databearbetningsenheten kan modifieras där många komponenter kan integreras. Karneraenheterna kan utformas for att kommunicera medelst elektromagnetiska vågor, infrarödssignaler eller liknande.The core units can e.g. replaced by radar units or similar. The data processing unit can also be modified where many components can be integrated. The core units can be designed to communicate by means of electromagnetic waves, infrared signals or the like.

Det är även möjligt att använda sekventiellt kodade markörer som beskrivs i den svensk patentansökan nr. 9700067-3. Dessutom är systemet enligt föreliggande uppfinning lämpligt for tillämpningar inom virtuell verklighet (VR), företrädesvis kan den speciella kostymen som 511 461 17 behövs i en sådan applikation ersättas genom att fasta en eller flera markörer vid en person/föremål som är del av VR-applikationen. I detta fall kommer kamerorna anslutna till en värddator att kunna spåra rnarkören(erna) och generera nödvändig data utan att belasta värddatorn med onödig databearbeming. 20 25 511 461 18 HÄNVISNINGSBETECKNINGAR 10 Kameraenhet 1 1 Markör 12 Föremål 1 3 Dator 14 Kamera 1 5 Kamera 1 6 Kamera 1 7 Kamera 1 8 Lins 19 Förbehandlingsenhet 20 Databearbetningsenhet 21 I/O-enhet 22 Buffert 2 3 Beräkningsenhet 24 Efterbearbetningsenhet 25 IN-bufferten 26 Markörbild 27 Mätplan 28 Detektorplan 29 UT-buffert 3 0 Meddelandehanteringsenhet 31 Databuss 32 Kamera 33 Kamera 34 KameraIt is also possible to use sequentially coded markers as described in Swedish patent application no. 9700067-3. In addition, the system of the present invention is suitable for virtual reality (VR) applications, preferably the special suit needed in such an application can be replaced by attaching one or more of your markers to a person / object that is part of the VR application. . In this case, the cameras connected to a host computer will be able to track the cursor (s) and generate the necessary data without burdening the host computer with unnecessary data processing. 20 25 511 461 18 REFERENCE DESIGNATIONS 10 Camera unit 1 1 Cursor 12 Object 1 3 Computer 14 Camera 1 5 Camera 1 6 Camera 1 7 Camera 1 8 Lens 19 Pre-processing unit 20 Data processing unit 21 I / O unit 22 Buffer 2 3 Calculation unit 24 Finishing unit 25 IN- the buffer 26 Cursor image 27 Measuring plane 28 Detector plane 29 OUT buffer 3 0 Message handling unit 31 Data bus 32 Camera 33 Camera 34 Camera

Claims (18)

10 15 20 25 30 511 461 19 PATENTKRAV10 15 20 25 30 511 461 19 PATENT REQUIREMENTS 1. Databearbetning i ett system omfattande åtminstone en datasamlande anordning (10, 14, 15, 16, 17), bestående av organ för åtminstone delvis bearbetning av samlad data, vilken anordning är ansluten till en datorenhet (13), fonnande en kedja av enheter, för att bearbeta nämnda åtminstone delvis bearbetad data från den datasamlande anordningen, kännetecknad av, att den datasamlande anordningen (10, 14, 15, 16, 17) är anordnad att internt bearbeta datan samlad av nämnda anordningen i olika nivåer, som har olika grader av informationsinnehåll, en hög grad av inforrnationsinnehåll och en låg grad av inforrnationsinnehåll, att den datasamlande anordningen dessutom omfattar organ för att mottaga data från andra datasamlande anordningar (10, 14, 15, 16, 17) i nämnda olika grader av informationsinnehåll, varvid en uppsättning data genererad i den datasamlande anordningen eller mottagen från en datasarnlande anordning som har en hög grad av informationsinnehåll ersätter en data som har lägre grad av informationsinnehâll före vidarebefordran av den bearbetade datan i kedjan.Data processing in a system comprising at least one data collecting device (10, 14, 15, 16, 17), consisting of means for at least partial processing of collected data, which device is connected to a computer unit (13), forming a chain of units , for processing said at least partially processed data from the data collecting device, characterized in that the data collecting device (10, 14, 15, 16, 17) is arranged to internally process the data collected by said device in different levels, which have different degrees of information content, a high degree of information content and a low degree of information content, that the data collecting device further comprises means for receiving data from other data collecting devices (10, 14, 15, 16, 17) in said different degrees of information content, wherein a set of data generated in the data collecting device or received from a data collecting device having a high degree of information content replaces a data having lower g row of information content before forwarding the processed data in the chain. 2. Databearbetning enligt patentkrav 1, kännetecknad av, att den datasarnlande anordningen består av en kameraenhet (10, 14, 15, 16, 17), en radarenhet eller liknande.Data processing according to claim 1, characterized in that the data collecting device consists of a camera unit (10, 14, 15, 16, 17), a radar unit or the like. 3. Ett rörelseanalyssystem omfattande åtminstone en kameraenhet (10, 14, 15, 16, 17), en datorenhet (13) och en markör (1 1), vilken kameraenhet (10, 14, 15, 16, 17) är ansluten till datorenheten (13) och/eller andra karneraenheter bildande en kedja av enheter, varvid varje karneraenhet omfattar organ för att omvandla en bild, huvudsakligen omfattande en bild (26) av markören (l 1) till en datauppsättning, kännetecknar av, att kameraenheten (10, 14, 15 , 16, 17) innefattar organ for kommunikation med andra kameraenheter (10, 14, 15, 16, 17) och/eller datorenheten (13), att uppsättningen av bearbetad data innefattar olika nivåer av bearbetad data, omfattande en uppsättning med huvudsakligen hög grad av informationsinnehåll och en med huvudsakligen låg grad av inforrnationsinnehåll, varvid en uppsättning av data genererad i kameraenheten eller mottagen från en kameraenhet som har 10 15 20 30 511 461 20 en hög grad av informationsinnehåll ersätter en data som har lägre grad av informationsinnehåll fore vidarebefordran av den bearbetade datan i kedjan av enheter.A motion analysis system comprising at least one camera unit (10, 14, 15, 16, 17), a computer unit (13) and a cursor (1 1), which camera unit (10, 14, 15, 16, 17) is connected to the computer unit (13) and / or other blocking units forming a chain of units, each blocking unit comprising means for converting an image, substantially comprising a picture (26) of the marker (11) into a data set, characterized in that the camera unit (10, 14, 15, 16, 17) comprises means for communication with other camera units (10, 14, 15, 16, 17) and / or the computer unit (13), that the set of processed data comprises different levels of processed data, comprising a set of processed data. a substantially high degree of information content and a substantially low degree of information content, wherein a set of data generated in the camera unit or received from a camera unit having a high degree of information content replaces a data having a lower degree of information content for the transmission of the processed data in the chain of devices. 4. Rörelseanalyssystem enligt patentkrav 3, kännetecknar av, att datauppsättningen som har en väsentligen hög grad av ínformationsinnehåll innefattar huvudsakligen information om en tredimensionell position av markören (11) i rymden.Motion analysis system according to claim 3, characterized in that the data set which has a substantially high degree of information content mainly comprises information about a three-dimensional position of the cursor (11) in space. 5. Rörelseanalyssystem enligt patentkrav 3, kännetecknar av, att datauppsättningen som har en väsentligen låg grad av informationsinnehåll innefattar infonnation om en tvådimensionell punkt i rymden, beskriven som en linje som har riktningskoefñcienter IQ, Ky, IQ, och diameter d) av markören och ett fimktionsvärde av (bn.Motion analysis system according to claim 3, characterized in that the data set having a substantially low degree of information content comprises information about a two-dimensional point in space, described as a line having direction coefficients IQ, Ky, IQ, and diameter d) of the cursor and a fi mction value of (bn. 6. Rörelseanalyssystem enligt patentkrav 3, kännetecknar av, att datauppsättningen dessutom innefattar information om en tredimensionell position för markören i rymden, beskriven av X-, Y-, Z-koordinater och en index för huvudsakligen två korsningslinj er.Motion analysis system according to claim 3, characterized in that the data set further comprises information about a three-dimensional position of the cursor in space, described by X, Y, Z coordinates and an index for substantially two intersecting lines. 7. Rörelseanalyssystem enligt något av patentkraven 3-6, kännetecknat av, att kameraenheten omfattar förbehandlingsenheter (19, 23, 24), buffert (22, 25, 29), optiskt element (18) och organ for kommunikation med andra kameraenheter.Motion analysis system according to one of Claims 3 to 6, characterized in that the camera unit comprises pretreatment units (19, 23, 24), buffer (22, 25, 29), optical element (18) and means for communication with other camera units. 8. Rörelseanalyssystem enligt något av patentkraven 3-7, kännetecknar av, att kameraenheten är ansluten till datorenheter genom en I/O-device (21).Motion analysis system according to one of Claims 3 to 7, characterized in that the camera unit is connected to computer units by means of an I / O device (21). 9. Rörelseanalyssystem enligt något av patentkraven 3-8, kännetecknar av, 10 15 20 25 30 511 461 21 att markören (1 1) är sekventiellt kodad.Motion analysis system according to one of Claims 3 to 8, characterized in that the marker (1 1) is sequentially coded. 10. Rörelseanalyssystem enligt patentkrav 4-6, kännetecknar av, att huvudsakligen varje kamera är anordnad för att generera en lista innehållande linjedata i en minnesenhet, vilken lista bearbetas och jämförs (105) med data mottagen från en föregående kamera genom att jämföra den inkommande punktdatan med eventuell internt genererad punktdata och uppdatera punktdatan, jäniföra de inkommande korsningdatan med intemt genererad linj edata som korsar korsningspunkten, uppdatera korsdatan och överföra korsningsdata för att peka på data med hänsyn till linjedatan, järnföra de inkommande linj edatan med hänsyn till intemt genererade linj edata och om två korsningslinjer resulterar i en punkt som har en god tolerans acceptera datan genom att uppdatera punktdatan och/eller generera en korsningsdata annars bibehålla linj edatan.Motion analysis system according to claims 4-6, characterized in that substantially each camera is arranged to generate a list containing line data in a memory unit, which list is processed and compared (105) with data received from a previous camera by comparing the incoming point data with any internally generated point data and update the point data, compare the incoming crossing data with internally generated line data crossing the crossing point, update the crossing data and transmit crossing data to point to data with respect to the line data, iron the incoming line data with respect to intimately generated if two intersection lines result in a point that has a good tolerance accept the data by updating the point data and / or generating an intersection data otherwise maintain the line data. 11. ll. Rörelseanalyssystem enligt patentkrav 3, kännetecknar av, att datorenheten (13) initierar datasamlingsprocessen.11. ll. Motion analysis system according to claim 3, characterized in that the computer unit (13) initiates the data collection process. 12. Rörelseanalyssystem enligt något av patentlcraven 3 - ll, kännetecknar av, att data paketeras som en ram försedd med ett ramhuvud, att om en inkommande ram har ett högre nummer så betyder det att en ram är förlorad under kommunikationen med en föregående kamera, varvid en av kameromas egna ramar sändes till nästa kamera som en linj edata, och att om den inkommande ramen har ett lägre nummer betyder det att en ram har förlorats i kommunikationen mellan en förbehandlingserihet (19) och en databearbemingsenhet (20) och ramen sänds till nästa kamera.Motion analysis system according to any one of claims 3 to 11, characterized in that data is packaged as a frame provided with a frame header, that if an incoming frame has a higher number, it means that a frame is lost during communication with a previous camera, wherein one of the cameras' own frames is sent to the next camera as a line of data, and that if the incoming frame has a lower number, it means that a frame has been lost in the communication between a pre-processing unit (19) and a data processing unit (20) and the frame is sent to the next camera. 13. Rörelseanalyssystem enligt patentkrav 12, kännetecknar av, att den databearbetningsenheten (20) bearbetar ramarna i tidsordning. 10 15 20 25 30 511 461 22Motion analysis system according to claim 12, characterized in that the data processing unit (20) processes the frames in chronological order. 10 15 20 25 30 511 461 22 14. Rörelseanalyssystem enligt något av patentkraven 3-11 kännetecknar av, att en uppsättning instruktioner som kontrollerar varje kameraenhet är anordnade i värddatom (13) för att utföra samrna process som i en kameraenhet.Motion analysis system according to any one of claims 3-11, characterized in that a set of instructions controlling each camera unit is arranged in the host atom (13) to perform concatenated process as in a camera unit. 15. Rörelseanalyssystem enligt något av patentkraven 3-14, kännetecknat av, att all datakommunikation mellan de anslutna enhetema sändes från punkt till punkt.Motion analysis system according to one of Claims 3 to 14, characterized in that all data communication between the connected units is transmitted from point to point. 16. Rörelseanalyssystem enligt något av patentkraven 3-15, kännetecknar av, att meddelandeöverföringen huvudsakligen innefattar stegen av: - att vaije enhet, som sänder ett meddelande väntar för ett kvittensmeddelande (ACK) inom en väsentligt förutbestämd tidsperiod (Tommd), om transmissionen var lyckad, annars - att upprepa meddelandet ett förutbestämt antal gånger innan kommunikationen antas misslyckad och ett felmeddelande genereras, vilket sänts till den sista kameran (17) i kedjan och dessutom till värddatorn (13), och - att om en mottagare av ett meddelande upptäcker att meddelandet är oriktigt sänds en negativ kvittens (NACK) till sändaren, d.v.s. ett begäran för en omsändning.Motion analysis system according to any one of claims 3-15, characterized in that the message transmission mainly comprises the steps of: - that each unit transmitting a message waits for an acknowledgment message (ACK) within a substantially predetermined time period (Inches), if the transmission was successful , otherwise - repeating the message a predetermined number of times before the communication is assumed to fail and an error message is generated, which is sent to the last camera (17) in the chain and also to the host computer (13), and - if a recipient of a message discovers that the message is incorrect, a negative acknowledgment (NACK) is sent to the transmitter, ie a request for a retransmission. 17. Rörelseanalyssystem enligt patentkrav 16, kännetecknar av, att den förutbestämda tidsperioden (Tomma) är: Tomma = Tmmd + Cfofato; + Tomma där Cmmj är en fördröjningstid i varje kamera, Tmedd är en överföringstid för ett meddelande, Tmdd är överföringstid för ACK/NACK, och Tomsänd är en time-out vid omsänding av ett meddelande.Motion analysis system according to claim 16, characterized in that the predetermined time period (Empty) is: Empty = Tmmd + Cfofato; + Empty where Cmmj is a delay time in each camera, Tmedd is a transmission time for a message, Tmdd is the transmission time for ACK / NACK, and Empty is a time-out when retransmitting a message. 18. En applikation för virtuell verklighet omfattande ett rörelseanalyssystem enligt något av patentkraven 3 till 17.An application for virtual reality comprising a motion analysis system according to any one of claims 3 to 17.
SE9700760A 1997-03-03 1997-03-03 Data Processing SE511461C2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
SE9700760A SE511461C2 (en) 1997-03-03 1997-03-03 Data Processing
PCT/SE1998/000379 WO1998039739A1 (en) 1997-03-03 1998-03-03 Data processing
AU66435/98A AU6643598A (en) 1997-03-03 1998-03-03 Data processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE9700760A SE511461C2 (en) 1997-03-03 1997-03-03 Data Processing

Publications (3)

Publication Number Publication Date
SE9700760D0 SE9700760D0 (en) 1997-03-03
SE9700760L SE9700760L (en) 1998-11-04
SE511461C2 true SE511461C2 (en) 1999-10-04

Family

ID=20406005

Family Applications (1)

Application Number Title Priority Date Filing Date
SE9700760A SE511461C2 (en) 1997-03-03 1997-03-03 Data Processing

Country Status (3)

Country Link
AU (1) AU6643598A (en)
SE (1) SE511461C2 (en)
WO (1) WO1998039739A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1404683A (en) 2000-12-20 2003-03-19 皇家菲利浦电子有限公司 Multi-picture in picture system
US7222198B2 (en) * 2003-05-13 2007-05-22 Hewlett-Packard Development Company, L.P. System for transferring data between devices by making brief connection with external contacts that extend outwardly from device exterior

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1990015509A1 (en) * 1989-06-07 1990-12-13 Loredan Biomedical, Inc. Video analysis of motion
US5475422A (en) * 1993-06-21 1995-12-12 Nippon Telegraph And Telephone Corporation Method and apparatus for reconstructing three-dimensional objects
KR100414629B1 (en) * 1995-03-29 2004-05-03 산요덴키가부시키가이샤 3D display image generation method, image processing method using depth information, depth information generation method
US5818959A (en) * 1995-10-04 1998-10-06 Visual Interface, Inc. Method of producing a three-dimensional image from two-dimensional images

Also Published As

Publication number Publication date
WO1998039739A1 (en) 1998-09-11
SE9700760L (en) 1998-11-04
AU6643598A (en) 1998-09-22
SE9700760D0 (en) 1997-03-03

Similar Documents

Publication Publication Date Title
CN107194962B (en) Point cloud and plane image fusion method and device
WO2021115331A1 (en) Triangulation-based coordinate positioning method, apparatus, and device and storage medium
US20190371003A1 (en) Monocular vision tracking method, apparatus and non-volatile computer-readable storage medium
CN111673735A (en) Mechanical arm control method and device based on monocular vision positioning
CN110880189B (en) Combined calibration method and combined calibration device thereof and electronic equipment
US9652660B2 (en) Control system, robot system, and control method
CN113409459B (en) Method, device and equipment for producing high-precision map and computer storage medium
CN109084746A (en) Monocular mode for the autonomous platform guidance system with aiding sensors
JP2008298685A (en) Measuring device and program
CN109040525B (en) Image processing method, image processing device, computer readable medium and electronic equipment
CN115714855A (en) Three-dimensional visual perception method and system based on stereoscopic vision and TOF fusion
CN112907728A (en) Ship scene restoration and positioning method and system based on camera and edge calculation
CN111179328A (en) Data synchronization calibration method and device, readable storage medium and electronic equipment
CN112308776B (en) Method for solving occlusion and error mapping image sequence and point cloud data fusion
CN117250956A (en) Mobile robot obstacle avoidance method and obstacle avoidance device with multiple observation sources fused
SE511461C2 (en) Data Processing
CN116642490A (en) Visual positioning navigation method based on hybrid map, robot and storage medium
CN109982074A (en) A kind of method, apparatus and assemble method of the tilt angle obtaining TOF mould group
CN113284106B (en) Distance detection method and device
CN114663519A (en) Multi-camera calibration method and device and related equipment
CN111736146B (en) Bistatic pre-detection tracking method and device based on speed filtering
CN110068308B (en) Distance measurement method and distance measurement system based on multi-view camera
CN111950420A (en) Obstacle avoidance method, device, equipment and storage medium
CN113112551A (en) Camera parameter determination method and device, road side equipment and cloud control platform
US20240045062A1 (en) Augmented illumination and 3d dimensioning (ai3d) from 3d reconstruction within a single-pose image

Legal Events

Date Code Title Description
NUG Patent has lapsed

Ref document number: 9700760-3

Format of ref document f/p: F