SE520474C2 - Methods and apparatus for identifying objects in digital images - Google Patents

Methods and apparatus for identifying objects in digital images

Info

Publication number
SE520474C2
SE520474C2 SE0103845A SE0103845A SE520474C2 SE 520474 C2 SE520474 C2 SE 520474C2 SE 0103845 A SE0103845 A SE 0103845A SE 0103845 A SE0103845 A SE 0103845A SE 520474 C2 SE520474 C2 SE 520474C2
Authority
SE
Sweden
Prior art keywords
image
quality measure
basis
threshold
current
Prior art date
Application number
SE0103845A
Other languages
Swedish (sv)
Other versions
SE0103845D0 (en
SE0103845L (en
Inventor
Andreas Olsson
Original Assignee
Anoto 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 Anoto Ab filed Critical Anoto Ab
Priority to SE0103845A priority Critical patent/SE520474C2/en
Publication of SE0103845D0 publication Critical patent/SE0103845D0/en
Priority to PCT/SE2002/002104 priority patent/WO2003044740A1/en
Priority to US10/300,029 priority patent/US7283676B2/en
Priority to EP02786335A priority patent/EP1449171A1/en
Priority to AU2002349854A priority patent/AU2002349854A1/en
Publication of SE0103845L publication Critical patent/SE0103845L/en
Publication of SE520474C2 publication Critical patent/SE520474C2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/142Image acquisition using hand-held instruments; Constructional details of the instruments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/28Quantising the image, e.g. histogram thresholding for discrimination between background and foreground patterns

Abstract

In a method for identifying objects in a digital image which is included in a sequence of images, luminance values of a current digital image are compared with at least one threshold value in order to create a current binarized image on the basis of the comparison. A quality measure for the current binarized image is also calculated, whereupon said at least one threshold value is updated on the basis of the quality measure for use in binarization of a subsequent image. The method can be realized in the form of a computer program, a computer program product, a device, and a hand -held apparatus for position determination.

Description

lO 15 20 25 30 35 520 474 2 relevanta strukturer, dels till att reducera mängden data som behandlas i efterföljande steg. Självfallet är det eftersträvansvärt att binäriseringen sker med hög nog- grannhet, eftersom fel annars tillåts fortplanta sig i efterföljande behandlingssteg. I det flesta fall kan hög noggrannhet tyvärr endast uppnås till priset av förhåll- andevis tids- och minneskrävande beräkningar. 10 15 20 25 30 35 520 474 2 relevant structures, partly to reduce the amount of data processed in subsequent steps. Of course, it is desirable that the binaryization takes place with high accuracy, as errors are otherwise allowed to propagate in subsequent treatment steps. In most cases, unfortunately, high accuracy can only be achieved at the cost of relatively time- and memory-consuming calculations.

Ovanstående överväganden mäste exempelvis göras vid beräkning av en position utgående frän bilder av ett mönster pä ett underlag. Mönstret innehåller härvid inbördes ätskilda symboler vars form och/eller inbördes placering kodar nämnda position. Bilderna kan exempelvis registreras optiskt av en sensor i en handhållen apparat, t ex med formen av en penna. En dylik apparat för posi- tionsbestämning beskrivs exempelvis i US-A-5 051 736, US-A-5 477 012, WO OO/73983 och US~Bl-6 208 771. De beräknade positionerna återspeglar apparatens rörelse- mönster över underlaget och kan därför användas för att skapa en elektronisk version av handskriven information.The above considerations must, for example, be made when calculating a position based on images of a pattern on a substrate. The pattern here contains mutually distinct symbols whose shape and / or mutual position encode said position. The images can, for example, be recorded optically by a sensor in a handheld device, for example with the shape of a pen. Such an apparatus for position determination is described, for example, in US-A-5,051,736, US-A-5,477,012, WO OO / 73983 and US-B1-6,208,771. The calculated positions reflect the movement pattern of the apparatus over the ground and can therefore be used to create an electronic version of handwritten information.

Ovannämnda bilder kan behandlas i en databehand- lingsenhet, säsom en lämpligt programmerad mikroproces- sor, en ASIC, en FPGA etc, vilken mottager en följd av digitala gråskalebilder, binäriserar dessa för identifie- ring av ovannämnda symboler, samt beräknar en position pä basis av varje binäriserad bild. Under binäriseringen används en tröskelmatris som innehåller ett tröskelvärde för varje bildelement i gräskalebilden. Varje bild inne- häller typiskt som minst ca 100 x 100 bildelement och har typiskt 8-bitars upplösning i luminans. Registrering av handskriven information bör ske med hög tidsupplösning, typiskt ca 50-100 bilder per sekund, varför det är svårt att förena kraven på hög noggrannhet vid binäriseringen med kraven pä snabb behandling och litet minnesbehov, även i en specialanpassad databehandlingsenhet.The above images can be processed in a data processing unit, such as a suitably programmed microprocessor, an ASIC, an FPGA, etc., which receives a sequence of digital grayscale images, binaryizes them for identification of the above symbols, and calculates a position based on each binary image. During binary, a threshold matrix is used that contains a threshold value for each pixel in the grass image. Each image typically contains at least about 100 x 100 pixels and typically has 8-bit luminance resolution. Registration of handwritten information should be done with a high time resolution, typically about 50-100 images per second, which is why it is difficult to combine the requirements for high accuracy in binary with the requirements for fast processing and low memory requirements, even in a specially adapted data processing unit.

I de flesta fall innehåller bilderna dessutom stör- ningar, t ex i form av brus, oskärpa, ojämn belysning och .«.... lO 15 20 25 30 35 5 2 0 4 7 4 §:ï¿ 3 geometrisk distorsion, vilket ytterligare försvårar iden- tifieringen av symboler eller objekt.In most cases, the images also contain disturbances, for example in the form of noise, blur, uneven lighting and. «.... lO 15 20 25 30 35 5 2 0 4 7 § 4: ï¿ 3 geometric distortion, which further complicates the identification of symbols or objects.

Sammanfattning av uppfinningen Föreliggande uppfinning har som ändamål att åtmin- stone delvis övervinna ovan relaterade problem med känd teknik.Summary of the Invention The present invention has for its object to at least partially overcome the above-related problems of the prior art.

Närmare bestämt syftar uppfinningen till att anvisa en förbättrad bildbehandlingsteknik för identifiering av objekt i en digital bild ingående i en följd av bilder.More particularly, the invention aims to provide an improved image processing technique for identifying objects in a digital image included in a sequence of images.

Det är vidare önskvärt att anvisa en bildbehand- lingsteknik som är noggrann men som likväl kan realiseras på ett tids- och minneseffektivt vis.It is also desirable to prescribe an image processing technique which is accurate but which can nevertheless be realized in a time and memory efficient manner.

Det är också ett ändamål att anvisa en bildbehand- lingsteknik som är tolerant för störningar, såsom varia- tioner i skärpa, variationer i bakgrundsluminans, varia- tioner i signal-brus-förhållande och perspektiveffekter, både inom respektive bild och mellan olika bilder.It is also an object to teach an image processing technique that is tolerant of disturbances, such as variations in sharpness, variations in background luminance, variations in signal-to-noise ratio and perspective effects, both within each image and between different images.

Dessa och andra ändamål, som kommer att framgå av följande beskrivning, uppnås helt eller delvis genom ett sätt enligt patentkrav l, ett datorprogram enligt patent- krav 19, en datorprogramprodukt enligt krav 20, en hand- hàllen apparat enligt krav 21, och en anordning enligt krav 22. Föredragna utföringsformer definieras i de underordnade patentkraven.These and other objects, which will become apparent from the following description, are achieved in whole or in part by a method according to claim 1, a computer program according to claim 19, a computer program product according to claim 20, a handheld apparatus according to claim 21, and an apparatus according to claim 22. Preferred embodiments are defined in the dependent claims.

Uppfinningen utgår från insikten att den eftersökta bildbehandlingstekniken kan åstadkommas genom en kombina- tion av en trösklingsalgoritm och återkopplad reglering.The invention is based on the insight that the desired image processing technique can be achieved by a combination of a threshold algorithm and feedback control.

Närmare bestämt verkställs en återkopplad reglering av minst en vid trösklingen använd trösklingsparameter för uppnàende av ett börvärde i form av ett kvalitetsmått hos bilderna efter trösklingen. Förekomsten av en återkopplad reglering gör det möjligt att uppnå en önskad tålighet mot ovannämnda störningar. Vidare kan en tillräcklig nog- grannhet uppnås även med användning av en förhållandevis enkel trösklingsalgoritm, vilken i sig kan realiseras på ett tids- och minneseffektivt vis. .-... 10 15 20 25 30 35 520 474 4 Enligt en första aspekt av uppfinningen avser denna således ett sätt att identifiera objekt i en digital bild ingående i en följd av bilder. Sättet omfattar steget att jämföra luminansvärden hos en aktuell digital bild med minst ett tröskelvärde för att på basis av jämförelsen skapa en aktuell binäriserad bild. Sättet omfattar dess- utom stegen att beräkna ett kvalitetsmått för den aktu- ella binäriserade bilden, och att på basis av kvalitets- måttet uppdatera nämnda minst ett tröskelvärde för an- vändning vid binärisering av en följande bild.More specifically, a feedback control of at least one threshold parameter used at the threshold is executed to achieve a setpoint in the form of a quality measure of the images after the threshold. The existence of a feedback control makes it possible to achieve a desired resistance to the above-mentioned disturbances. Furthermore, a sufficient accuracy can be achieved even with the use of a relatively simple thresholding algorithm, which in itself can be realized in a time and memory efficient manner. According to a first aspect of the invention, this thus relates to a method of identifying objects in a digital image included in a sequence of images. The method comprises the step of comparing the luminance values of a current digital image with at least one threshold value in order to create a current binary image on the basis of the comparison. The method also comprises the steps of calculating a quality measure for the current binary image, and on the basis of the quality measure updating the said at least one threshold value for use in binary the following image.

Nämnda minst ett tröskelvärde uppdateras lämpligen på basis av differensen mellan kvalitetsmåttet, som bil- dar ett ärvärde, och ett kvalitetsbörvärde.The mentioned at least one threshold value is suitably updated on the basis of the difference between the quality measure, which forms an actual value, and a quality setpoint.

Kvalitetsmåttet reflekterar någon önskad egenskap hos de binäriserade bilderna, såsom en viss storlek eller form hos objekten. Enligt ett utförande, som bl a kan vara ändamålsenligt vid ovannämnda positionsbestämning, representerar kvalitetsmåttet arean av objekten i den aktuella binàriserade bilden. Ett sådant kvalitetsmått kan exempelvis utgöras av den totala objektarean, ett objektareamedelvärde, en objektareafördelning, ett för- hållande mellan objektarea och bakgrundsarea i den bi- näriserade bilden etc. Ett sådant kvalitetsmàtt, i form av ett aggregerat värde för ett flertal objekt i den binäriserade bilden, är förhållandevis okänsligt för perspektivrelaterade bildförvrängningar. Exempelvis med- för ett perspektiv att objektens area ökar i en del av bilden och minskar i en annan; i medeltal är dock objekt- arean väsentligen densamma, oberoende av perspektiv.The quality measure reflects any desired property of the binary images, such as a certain size or shape of the objects. According to an embodiment, which may, among other things, be expedient in the above-mentioned position determination, the quality measure represents the area of the objects in the current binary image. Such a quality measure can for instance consist of the total object area, an object area mean value, an object area distribution, a relationship between object area and background area in the binarized image, etc. Such a quality measure, in the form of an aggregate value for a plurality of objects in the binarized image, is relatively insensitive to perspective-related image distortions. For example, a perspective means that the area of the objects increases in one part of the image and decreases in another; on average, however, the object area is essentially the same, regardless of perspective.

Ovannämnda tàlighet mot störningar möjliggörs genom användning av en tröskelmatris innehållande tröskelvärden som är designerade för olika delområden av den aktuella bilden, där varje delområde omfattar ett flertal bild- element. En sådan tröskelmatris kan beräknas på ett snabbt och minneseffektivt vis genom att ett bakgrunds- luminansvärde och ett objektluminansvärde skattas för varje delområde hos den aktuella bilden, och genom att 10 l5 20 25 30 35 520 474 ïßïff 5 tröskelmatrisens tröskelvärden uppdateras på basis av nämnda bakgrundsluminansvärde och nämnda objektluminans- värde. Denna tröskelmatris är således beräknad på basis av bildstatistikdata för delområdena i den aktuella bild- en och innehåller därigenom tröskelvärden som är relate- rade till den övergripande luminansfördelningen i denna bild, både med avseende på bakgrunden och på objekten.The above-mentioned resistance to interference is made possible by the use of a threshold matrix containing threshold values which are designated for different sub-areas of the image in question, each sub-area comprising a plurality of picture elements. Such a threshold matrix can be calculated in a fast and memory efficient manner by estimating a background luminance value and an object luminance value for each sub-area of the current image, and by updating the threshold values of the threshold matrix on the basis of said background luminance value. and said object luminance value. This threshold matrix is thus calculated on the basis of image statistics data for the sub-areas of the current image and thereby contains threshold values that are related to the overall luminance distribution in this image, both with respect to the background and the objects.

I ett sådant utförande kan tröskelmatrisens trös- kelvärden uppdateras på basis av minst en kontrastdjup- faktor, som anger tröskelvärdets relativa läge mellan bakgrundsluminansvärdet och objektluminansvärdet. Binäri- seringen regleras lämpligen via denna kontrastdjupfaktor.In such an embodiment, the threshold values of the threshold matrix can be updated on the basis of at least one contrast depth factor, which indicates the relative position of the threshold value between the background luminance value and the object luminance value. Binaryization is suitably regulated via this contrast depth factor.

I detta fall används således kvalitetsmåttet på den aktu- ella binäriserade bilden för att fastställa kontrastdjup- faktorn inför nästföljande binärisering.In this case, the quality measure of the current binary image is used to determine the contrast depth factor before the next binary.

Enligt ett utförande används en och samma kontrast- djupfaktor för beräkning av hela tröskelmatrisen.According to one embodiment, one and the same contrast depth factor is used for calculating the entire threshold matrix.

Enligt ett alternativt utförande fastställs en kontrastdjupfaktor för vart och ett av ett antal styr- delområden i den aktuella binäriserade bilden, varpå den resulterande uppsättningen kontrastdjupfaktorer används för beräkning av tröskelmatrisen.According to an alternative embodiment, a contrast depth factor is determined for each of a number of control areas in the current binaryized image, whereupon the resulting set of contrast depth factors is used to calculate the threshold matrix.

Ett föredraget utförande inbegriper en reglerloop, vid vilken varje iteration omfattar stegen att läsa in en aktuell bild; att skatta den aktuella bildens kontrast- fördelning; att beräkna tröskelmatrisens tröskelvärden, utgående från nämnda kontrastfördelning och en under den föregående iterationen beräknad kontrastdjupfaktor; att skapa en aktuell binäriserad bild på basis av tröskel- matrisen; att beräkna ett kvalitetsmått på den aktuella binäriserade bilden; att beräkna ett fel mellan ett bör- värde och kvalitetsmåttet; och att beräkna en ny kont- rastdjupfaktor utgående från den föregående kontrastdjup- faktorn och nämnda fel. Den aktuella bildens kontrastför- delning kan exempelvis skattas utgående från ovannämnda bakgrunds- och objektluminansvärden för olika delområden. ...». lO 15 20 25 30 35 520 474 6 Reglerloopen är lämpligen utformad att arbeta med väsentligen konstanta poler. En sådan reglerloop kan vara baserad på en modellfunktion som relaterar kvalitets- måttet till den föregående kontrastdjupfaktorn och som omfattar minst en modellarbetspunkt som är väsentligen gemensam för alla digitala bilder i följden av bilder, dvs för alla driftsbetingelser. Därmed kan en ny kont- rastdjupfaktor beräknas genom parametrisering av modell- funktionen på basis av den föregående kontrastdjupfaktorn och nämnda modellarbetspunkt. Modellfunktionens paramet- rar kan således beräknas för varje iteration, varpå reg- lerloopens reglerparametrar kan anpassas adaptivt för uppnående av väsentligen konstanta poler. Dessa poler kan vara valda för uppnående av önskad stabilitet och/eller svarstid hos reglerloopen.A preferred embodiment includes a control loop, in which each iteration comprises the steps of reading a current image; to estimate the contrast distribution of the current image; calculating the threshold values of the threshold matrix, based on said contrast distribution and a contrast depth factor calculated during the previous iteration; creating a current binaryized image based on the threshold matrix; to calculate a quality measure of the current binary image; to calculate an error between a setpoint and the quality measure; and calculating a new contrast depth factor based on the previous contrast depth factor and said error. The contrast distribution of the current image can, for example, be estimated on the basis of the above-mentioned background and object luminance values for different sub-areas. ... ». 10 15 20 25 30 35 520 474 6 The control loop is suitably designed to work with substantially constant poles. Such a control loop can be based on a model function which relates the quality measure to the previous contrast depth factor and which comprises at least one model operating point which is essentially common to all digital images in the sequence of images, ie for all operating conditions. Thus, a new contrast depth factor can be calculated by parameterizing the model function on the basis of the previous contrast depth factor and said model operating point. The parameters of the model function can thus be calculated for each iteration, whereupon the control parameters of the control loop can be adapted adaptively to achieve substantially constant poles. These poles can be selected to achieve the desired stability and / or response time of the control loop.

Det bör kanske påpekas att den gemensamma modell- arbetspunkten inte behöver utgöra en faktisk driftspunkt för den arbetande reglerloopen. Modellarbetspunkten kan således ligga utanför reglerloopens styrområde och endast användas som ett bivillkor för beräkning av reglerpara- metrarna.It should perhaps be pointed out that the common model working point does not have to be an actual operating point for the working control loop. The model operating point can thus be outside the control range of the control loop and only be used as a side condition for calculating the control parameters.

Modellfunktionen är lämpligen definierad åtminstone kring börvärdet. Av reglertekniska skäl är det vidare föredraget, men ej nödvändigt, att modellfunktionen är en linjär funktion.The model function is suitably defined at least around the setpoint. For control technical reasons, it is further preferred, but not necessary, that the model function is a linear function.

Enligt ett utförande sätts kvalitetsmåttet lika med börvärdet vid parametriseringen av modellfunktionen. Ett sådant utförande är att föredra med avseende på regler- loopens stabilitet.According to one embodiment, the quality measure is set equal to the setpoint when parameterizing the model function. Such an embodiment is preferable with respect to the stability of the control loop.

Enligt ett alternativt utförande parametriseras modellfunktionen med användning av det kvalitetsmått som beräknats för den aktuella binäriserade bilden. Ett så- dant utförande är att föredra med avseende på regler- loopens svarstid.According to an alternative embodiment, the model function is parameterized using the quality measure calculated for the current binary image. Such an embodiment is preferable with respect to the response time of the control loop.

Enligt ett ytterligare föredraget utförande verk- ställs även en intermittent uppdatering av börvärdet på basis av kvalitetsmåttet, företrädesvis på basis av den .1-.... lO l5 20 25 30 35 520 474 7 nya kontrastdjupfaktor som beräknas utgående från kvali- tetsmåttet. En sådan uppdatering kan ske baserat på ett uppmätt samband mellan ett optimalt börvärde för olika driftsbetingelser och tillhörande kontrastdjupfaktor. Den nya kontrastdjupfaktor som avges av reglerloopen under varje iteration kan således även användas för att via detta uppmätta samband beräkna ett uppdaterat börvärde.According to a further preferred embodiment, an intermittent update of the setpoint is also performed on the basis of the quality measure, preferably on the basis of the new contrast depth factor which is calculated on the basis of the quality measure. Such an update can take place based on a measured relationship between an optimal setpoint for different operating conditions and the associated contrast depth factor. The new contrast depth factor emitted by the control loop during each iteration can thus also be used to calculate an updated setpoint via this measured relationship.

För att àterknyta till den inledningsvis diskuterade positionsbestämningen så kan reglerloopen vara utformad för uppnående av en given area på objekten i var och en av de binäriserade bilderna. Ett sådant börvärde är givetvis satt med kunskap om såväl det avbildande system- et som objektens originalstorlek på det underlag som av- bildas. I praktiken är det emellertid svårt att översätta objektens originalstorlek till en optimal objektstorlek i bilderna. Exempelvis påverkas avbildningen av underlag- ets kvalitet, t ex med avseende pà objektens absorbans/ reflektans. Vidare kan objekten på underlaget avvika från sin tilltänkta originalstorlek p g a felaktigheter i trycknings- eller utskriftsprocessen. Alternativt saknas någon entydig originalstorlek, exempelvis om underlaget medvetet har försetts med positionskodande objekt av olika storlek, t ex för att bädda in positionskodnings- mönstret i grafisk information, såsom beskrivs i sökan- dens internationella patentansökan PCT/SEOl/71644, vilken införlivas häri genom denna hänvisning.To relate to the position determination initially discussed, the control loop can be designed to achieve a given area on the objects in each of the binary images. Such a setpoint is of course set with knowledge of both the imaging system and the original size of the objects on the substrate being imaged. In practice, however, it is difficult to translate the original size of the objects to an optimal object size in the images. For example, the image is affected by the quality of the substrate, for example with regard to the objects' absorbance / reflectance. Furthermore, the objects on the substrate may deviate from their intended original size due to errors in the printing or printing process. Alternatively, there is no unambiguous original size, for example if the substrate has been deliberately provided with position coding objects of different sizes, for example to embed the position coding pattern in graphic information, as described in the applicant's international patent application PCT / SEO1 / 71644, which is incorporated herein by this reference.

I samtliga dessa fall är det en stor fördel att verkställa ovannämnda intermittenta uppdatering av bör- värdet, i det att reglerloopen kan bringas att automa- tiskt anpassa sig till underlaget.In all these cases, it is a great advantage to carry out the above-mentioned intermittent update of the setpoint, in that the control loop can be made to automatically adapt to the data.

Ytterligare aspekter av uppfinningen avser ett datorprogram, en datorprogramprodukt, en handhållen apparat för positionsbestämning, samt en anordning för identifiering av objekt i en digital bild.Further aspects of the invention relate to a computer program, a computer program product, a handheld position determining apparatus, and a device for identifying objects in a digital image.

Fördelarna med datorprogrammet, datorprogramprodukt- en, den handhållna apparaten och anordningen framgår av ovanstående redogörelse. Sàrdragen som beskrivs i samband 10 l5 20 25 30 35 520 474 8 med sättet att identifiera objekt i en digital bild är självfallet tillämpbara även vid dessa ytterligare aspekter.The advantages of the computer program, the computer program product, the handheld device and the device appear from the above description. The features described in connection with the method of identifying objects in a digital image are, of course, applicable to these further aspects as well.

Kortfattad beskrivning av ritningarna Uppfinningen beskrivs nedan i exemplifierande syfte med hänvisning till bifogade ritningar, vilka äskädliggör för närvarande föredragen utföringsformer.Brief Description of the Drawings The invention is described below by way of example with reference to the accompanying drawings, which illustrate presently preferred embodiments.

Fig 1 är en schematisk vy av en uppsättning om 4 X 4 objekt i ett positionskodningsmönster.Fig. 1 is a schematic view of a set of 4 X 4 objects in a position coding pattern.

Fig 2 är en schematisk vy av en handhållen sensor- anordning som kan användas för att detektera positions- kodningsmönstret i fig 1.Fig. 2 is a schematic view of a handheld sensor device that can be used to detect the position coding pattern of Fig. 1.

Fig 3 är ett blockschema som visar delar av en upp- finningsenlig anordning, samt informationsutbytet mellan dessa delar.Fig. 3 is a block diagram showing parts of a device according to the invention, as well as the exchange of information between these parts.

Fig 4 är ett flödesschema som visar de övergripande stegen vid ett uppfinningsenligt sätt att identifiera objekt i digitala bilder.Fig. 4 is a flow chart showing the overall steps of an inventive method of identifying objects in digital images.

Fig 5 är en vy som schematiskt illustrerar indel- ningen av en gràskalebild i delområden för beräkning av en tröskelmatris.Fig. 5 is a view schematically illustrating the division of a grass scale image into sub-areas for calculating a threshold matrix.

Fig 6 är ett blockschema för äskädliggörande av en reglerloop enligt en första utföringsform av det upp- finningsenliga sättet.Fig. 6 is a block diagram for illustrating a control loop according to a first embodiment of the method according to the invention.

Fig 7 är ett flödesschema som i större detalj äskäd- liggör den första utföringsformen av det uppfinnings- enliga sättet.Fig. 7 is a flow chart illustrating in greater detail the first embodiment of the method according to the invention.

Fig 8 är ett diagram över uppmätt förhållande mel- lan medelobjektarea Q och kontrastdjupfaktor k för olika underlag, samt en modellfunktion som approximerar för- hällandet kring ett börvärde w.Fig. 8 is a diagram of the measured relationship between the mean object area Q and the contrast depth factor k for different substrates, and a model function that approximates the ratio around a setpoint value w.

Fig 9 är ett blockschema för äskädliggörande av en reglerloop enligt en andra utföringsform av det uppfin- ningsenliga sättet.Fig. 9 is a block diagram for illustrating a control loop according to a second embodiment of the method according to the invention.

Fig 10 är ett diagram över uppmätt förhållande mellan optimalt börvärde w@x och tillhörande kontrast- djupfaktor k för olika driftsbetingelser. lO 15 20 25 30 35 520 474 9 Fig 11 är ett flödesschema som i detalj åskådliggör en implementation av den andra utföringsformen.Fig. 10 is a diagram of the measured relationship between optimal setpoint w @ x and associated contrast depth factor k for different operating conditions. Fig. 11 is a flow chart illustrating in detail an implementation of the second embodiment.

Beskrivning av föredragna utföringsformer Nedanstående beskrivning år inriktad på positions- bestämning utifrån gråskalebilder av ett positionskod- ningsmönster. Positionskodningsmönstret kan vara av god- tyckligt slag, exempelvis något av de inledningsvis ut- pekade mönstren. I det följande exemplifieras dock upp- finningen i anslutning till det mönster som beskrivs i sökandens patentpublikationer WO 01/16691, WO 01/26032 och WO 01/26033. med hänvisning till fig 1.Description of preferred embodiments The following description is focused on position determination based on grayscale images of a position coding pattern. The position coding pattern can be of any kind, for example one of the patterns initially designated. In the following, however, the invention is exemplified in connection with the pattern described in the applicant's patent publications WO 01/16691, WO 01/26032 and WO 01/26033. with reference to Fig. 1.

Detta mönster beskrivs nedan i korthet Positionskodningsmönstret innefattar ett virtuellt raster 10, som alltså varken syns för det mänskliga ögat eller kan detekteras direkt av en anordning som skall bestämma positioner på ytan, och ett flertal markeringar 11, som var och en, beroende på sin placering, till ”4”. represen- terar ett av fyra värden ”1” Markeringens 11 värde beror på var den är placerad i förhållande till sin nominella position 12. Den nominella positionen 12, som också kan betecknas som en rasterpunkt, representeras av skärningspunkten mellan rasterlinjerna.This pattern is briefly described below. The position coding pattern comprises a virtual grid 10, which is thus neither visible to the human eye nor can be detected directly by a device which is to determine positions on the surface, and a plurality of markings 11, each depending on its location. , to "4". represents one of four values “1” The value of the mark 11 depends on where it is located in relation to its nominal position 12. The nominal position 12, which can also be described as a raster point, is represented by the intersection of the raster lines.

I en utföringsform är avståndet mellan rasterlinjer- na 300 pm och vinkeln mellan rasterlinjerna 90 grader.In one embodiment, the distance between the raster lines is 300 μm and the angle between the raster lines is 90 degrees.

Andra rasteravstånd år möjliga, t ex 254 pm för att passa till printrar och scanners, som ofta har en upplösning som är en multipel av 100 dpi, vilket motsvarar ett av- stånd mellan punkter på 25,4 mm/100, dvs 254 pm.Other raster distances are possible, eg 254 pm to suit printers and scanners, which often have a resolution that is a multiple of 100 dpi, which corresponds to a distance between points of 25.4 mm / 100, ie 254 pm.

I exemplet i fig 1 finns fyra möjliga placeringar, en på var och en av rasterlinjerna som utgår från den nominella positionen 12. Förskjutningen från den nomi- nella positionen 12 år lika stor för alla värden. Varje markering 11 är med sin tyngdpunkt förskjuten i förhåll- ande till sin nominella position 12, dvs ingen markering år belägen i den nominella positionen. Det finns vidare en enda markering 11 per nominell position 12. -q-n. l0 15 20 25 30 35 520 474 10 I en utföringsform är markeringarna 11 förskjutna 50 pm utmed rasterlinjerna i förhållande till de nomi- nella positionerna 12. Förskjutningen är företrädesvis 1/6 av rasteravståndet, eftersom det då blir relativt enkelt att avgöra vilken nominell position som en viss markering tillhör. Förskjutningen bör vara minst omkring 1/8 av rasteravstàndet, eftersom det annars kan bli det svårt att bestämma en förskjutning, dvs kraven på upplös- ning blir stora. Å andra sidan bör förskjutningen vara mindre än omkring 1/4 av rasteravståndet för att till- hörighet till nominell position skall kunna bestämmas.In the example in Fig. 1, there are four possible locations, one on each of the raster lines starting from the nominal position 12. The displacement from the nominal position 12 is equal for all values. Each mark 11 is offset with its center of gravity relative to its nominal position 12, ie no mark is located in the nominal position. There is also a single mark 11 per nominal position 12. -q-n. In one embodiment, the markings 11 are offset 50 μm along the grid lines relative to the nominal positions 12. The offset is preferably 1/6 of the grid distance, since it then becomes relatively easy to determine which nominal position to which a certain mark belongs. The offset should be at least about 1/8 of the raster distance, as otherwise it can be difficult to determine an offset, ie the requirements for resolution become large. On the other hand, the displacement should be less than about 1/4 of the raster distance in order to determine belonging to the nominal position.

Varje markering ll utgöres av en mer eller mindre cirkulär prick med en radie som är omkring lika stor som förskjutningen eller något mindre. Radien kan vara mellan 25% till 120% av förskjutningen. Om radien blir mycket större än förskjutningen kan det bli svårt att bestämma rasterlinjerna. Om radien blir för liten behövs större upplösning för att registrera markeringarna. Markering- arna behöver dock inte vara cirkulära eller runda, utan kan ha vilken som helst lämplig form, såsom kvadratisk, triangulär, elliptisk, fylld, ofylld etc.Each marking ll consists of a more or less circular dot with a radius which is about equal to the displacement or slightly smaller. The radius can be between 25% to 120% of the displacement. If the radius becomes much larger than the offset, it can be difficult to determine the grid lines. If the radius becomes too small, a larger resolution is needed to register the markings. However, the markings do not have to be circular or round, but can have any suitable shape, such as square, triangular, elliptical, filled, unfilled, etc.

Ovan beskrivna mönster kan utformas att koda ett mycket stort antal absoluta positioner. Exempelvis kan mönstret vara sådant att 6x6 angränsande markeringar tillsammans kodar en position, i form av en x-koordinat och en y-koordinat. Om en delmängd av mönstret är appli- cerad på en produkt kan man åstadkomma en elektronisk representation av det som skrivs eller ritas pà produkten med en penna genom att man löpande bestämmer pennans position på produkten genom avläsning av den lokala kom- binationen av markeringar. Denna avläsning kan ske genom optisk detektion.The patterns described above can be designed to encode a very large number of absolute positions. For example, the pattern may be such that 6x6 adjacent markings together encode a position, in the form of an x-coordinate and a y-coordinate. If a subset of the pattern is applied to a product, an electronic representation of what is written or drawn on the product can be obtained with a pen by continuously determining the position of the pen on the product by reading the local combination of markings. This reading can be done by optical detection.

I fig 2 visas en handhållen apparat 20, nedan kallad penna, som används för optisk detektion av positionskod- ningsmönstret i fig 1. I det följande beskrivs kort pennans huvudkomponenter. För en mer fullständig beskriv- lO l5 20 25 30 35 520 474 ;;g;f ll ning hänvisas till ovannämnda WO 01/16691, WO 01/26032 och WO Ol/26033.Fig. 2 shows a hand-held apparatus 20, hereinafter referred to as a pen, which is used for optical detection of the position coding pattern in Fig. 1. In the following, the main components of the pen are briefly described. For a more complete description, reference is made to the above-mentioned WO 01/16691, WO 01/26032 and WO Ol / 26033.

Pennan 20 uppvisar ett pennformigt hölje 21 som i sin ena kortände avgränsar en öppning 22. Kortänden är avsedd att ligga an mot eller hållas på litet avstånd från den yta på vilken positionsbestämningen skall ske.The pen 20 has a pen-shaped housing 21 which in its one short end defines an opening 22. The short end is intended to abut or be kept at a small distance from the surface on which the position determination is to take place.

En eller flera infraröda lysdioder 23 är inrättade vid öppningen 22 för belysning av det ytområde som skall avbildas, och en IR-känslig areasensor 24, exempelvis en CCD- eller CMOS-sensor, är inrättad att registrera en tvådimensionell bild av ytområdet.One or more infrared LEDs 23 are arranged at the aperture 22 for illuminating the surface area to be imaged, and an IR-sensitive area sensor 24, for example a CCD or CMOS sensor, is arranged to register a two-dimensional image of the surface area.

Areasensorn 24 är kopplad till en databehandlare 25 som är anordnad att bestämma en position på basis av den av sensorn 14 registrerade bilden. Databehandlaren 25 kan innehålla ett processororgan 25a som är programmerat att bearbeta bilder från sensorn 24, eller från ett sensorn 24 tillordnat minnesorgan 25b, för positionsbestämning på basis av dessa bilder.The area sensor 24 is connected to a data processor 25 which is arranged to determine a position on the basis of the image registered by the sensor 14. The data processor 25 may include a processor means 25a which is programmed to process images from the sensor 24, or from a memory means 25b assigned to a sensor 24, for position determination on the basis of these images.

Processororganet 25a kan omfatta en mikroprocessor, såsom en CPU ("Central Processing Unit"), en DSP ("Digi- tal Signal Processor") eller någon annan programmerbar logisk anordning, såsom en FPGA. Processororganet 25a kan alternativt, eller dessutom, omfatta en hårdvarukrets, såsom en ASIC ("Application-Specific Integrated Circuit") och/eller diskreta analoga och digitala komponenter.The processor means 25a may comprise a microprocessor, such as a CPU ("Central Processing Unit"), a DSP ("Digital Signal Processor") or any other programmable logic device, such as an FPGA. The processor means 25a may alternatively, or additionally, comprise a hardware circuit, such as an ASIC ("Application-Specific Integrated Circuit") and / or discrete analog and digital components.

Minnesorganet 25b omfattar företrädesvis olika typer av minne, såsom arbetsminne (RAM), läsminne (ROM/FLASH) och skrivminne (FLASH). På känt vis kan arbetsminnet lagra data under det att denna bearbetas medelst proces- sororganet 25a, kan läsminnet lagra den programkod som exekveras av processororganet 25a i arbetsminnet, och kan skrivminnet lagra resultatet av bearbetningen, såsom positionskoordinater.The memory means 25b preferably comprises different types of memory, such as working memory (RAM), reading memory (ROM / FLASH) and write memory (FLASH). In a known manner, the working memory can store data while it is being processed by the processor means 25a, the read memory can store the program code executed by the processor means 25a in the working memory, and the write memory can store the result of the processing, such as position coordinates.

Pennan 20 har också en pennspets 26 som avsätter markeringsvätska på underlaget. Därmed kan användaren skriva fysiskt på underlaget samtidigt som det skrivna registreras digitalt via optisk detektion av positions- ...m ...n-_ 10 15 20 25 30 35 520 474 12 kodningsmönstret. Markeringsvätskan är lämpligen trans- parent för infrarött ljus, medan positionskodningsmönst- rets markeringar 11 (fig 1) är absorberande för infrarött ljus. Därmed undviks att markeringsvätskan stör detek- tionen av mönstret.The pen 20 also has a pen tip 26 which deposits marking liquid on the substrate. Thus, the user can physically write on the substrate at the same time as what is written is digitally registered via optical detection of the positioning ... m ... n-_ 10 15 20 25 30 35 520 474 12 coding pattern. The marking liquid is suitably transparent for infrared light, while the markings 11 of the position coding pattern (Fig. 1) are absorbent for infrared light. This avoids that the marking fluid interferes with the detection of the pattern.

När pennan 20 förs över positionskodningsmönstret registrerar sàledes areasensorn 24 en följd av digitala gràskalebilder som överförs till databehandlaren 25 för positionsbestämning. I ett utförande innehåller gràskale- bilderna 96 x 96 bildelement vars luminansvärden ges med 8 bitars upplösning. För uppnàende av adekvat tidsupplös- ning på den digitalt registrerade informationen utläses bilder frän areasensorn 24 med en frekvens av ca 100 Hz.Thus, when the pen 20 is passed over the position coding pattern, the area sensor 24 registers a sequence of digital grayscale images which are transmitted to the positioning data processor 25. In one embodiment, the grayscale images contain 96 x 96 pixels whose luminance values are given with 8-bit resolution. To achieve adequate time resolution on the digitally registered information, images are read from the area sensor 24 at a frequency of approx. 100 Hz.

I bilderna framträder markeringarna 11 (fig 1) som mörka prickar mot en ljus bakgrund. Vanligen täcker varje markering eller objekt flera bildelement. Skärpan kan variera inom bilden som resultat av att pennan 20, och därmed areasensorn 24, vinklas mot underlaget vid ned- tecknandet av information. Kontrasten kan även variera inom bilden som resultat av ojämna spridningsegenskaper hos underlaget. Dessutom kan belysningen av underlaget vara ojämn. Sammantaget leder detta till variationer i skärpa, kontrast, signal-brus-förhållande och belysning inom varje bild. Dessutom uppkommer motsvarande varia- tioner mellan olika bilder, eftersom pennans snedställ- ningsvinkel varierar över tiden, och mellan olika använ- dare och underlag, under nedtecknande av information.In the pictures, the markings 11 (fig. 1) appear as dark dots against a light background. Typically, each selection or object covers multiple pixels. The sharpness can vary within the image as a result of the pen 20, and thus the area sensor 24, being angled towards the substrate when writing down information. The contrast can also vary within the image as a result of uneven scattering properties of the substrate. In addition, the illumination of the surface may be uneven. Taken together, this leads to variations in sharpness, contrast, signal-to-noise ratio and illumination within each image. In addition, corresponding variations arise between different images, as the angle of inclination of the pen varies over time, and between different users and substrates, while recording information.

I fig 3 visas ett blockschema över relevanta delar av databehandlaren enligt fig 2. En gräskalebild I re- gistreras medelst sensorn 30 (motsvarande areasensorn 24 i fig 2) och överförs för lagring till en minnesmodul 31, exempelvis ovannämnda arbetsminne eller skrivminne. Vid behov kan ett flertal bilder buffras i minnesmodulen 31 i väntan pà avkodning. En segmenteringsmodul 32 läser in en gräskalebild I fràn minnesmodulen 31 och trösklar sedan denna med användning av en tröskelmatris T som erhålls fràn en tröskelberäkningsmodul 33. Segmenteringsmodulen 10 15 20 25 30 35 520 474 l3 32 jämför härvid luminansvärdet hos varje bildelement i den aktuella bilden I med ett tillhörande tröskelvärde i tröskelmatrisen T. Om luminansvärdet är större än tröskelvärdet sätts motsvarande luminansvärde hos den binära bilden till ett (1), annars till noll (O). Den resulterande binära bilden B innehåller således mörka objekt (värde O), som idealt utgör markeringarna, mot en ljus bakgrund (värde 1). Den binära bilden B sparas sedan i minnesmodulen 31.Fig. 3 shows a block diagram of relevant parts of the data processor according to Fig. 2. A grass scale image I is registered by means of the sensor 30 (corresponding to the area sensor 24 in Fig. 2) and transferred for storage to a memory module 31, for example the above-mentioned working memory or write memory. If necessary, a plurality of images can be buffered in the memory module 31 while waiting for decoding. A segmentation module 32 reads a grass scale image I from the memory module 31 and then thresholds it using a threshold matrix T obtained from a threshold calculation module 33. The segmentation module 10 here compares the luminance value of each pixel in the current pixel. with an associated threshold value in the threshold matrix T. If the luminance value is greater than the threshold value, the corresponding luminance value of the binary image is set to one (1), otherwise to zero (0). The resulting binary image B thus contains dark objects (value O), which ideally constitute the markings, against a light background (value 1). The binary image B is then saved in the memory module 31.

Den binära bilden B läses sedan in av en analysmodul 34, vilken beräknar ett kvalitetsmått Q på bilden B, så- som kommer att beskrivas mer i detalj nedan. Slutligen behandlas den binära bilden B i en avkodningsmodul 35, vilken bearbetar informationen i bilden B för avkodning av positionskoordinater x,y pà basis av objektens lägen i förhållande till det virtuella rastret. Avkodningsmodulen 35 kommer inte att beskrivas i detalj häri, eftersom föreliggande uppfinning är inriktad på förbehandlings- steget, närmare bestämt binäriseringen av gràskalebild- erna I.The binary image B is then read in by an analysis module 34, which calculates a quality measure Q in the image B, as will be described in more detail below. Finally, the binary image B is processed in a decoding module 35, which processes the information in the image B to decode position coordinates x, y on the basis of the positions of the objects in relation to the virtual raster. The decoding module 35 will not be described in detail herein, since the present invention is directed to the pretreatment step, more particularly the binaryization of the grayscale images I.

Den inkommande gråskalebilden I behandlas även av en statistikmodul 36, vilken genererar bildstatistikdata S för givna delområden eller underregioner i den aktuella gräskalebilden I. Denna bildstatistikdata S läggs i lämp- ligen i minnesmodulen 31, från vilken tröskelberäknings- modulen 33 kan hämta aktuell bildstatistikdata S när den skall påbörja beräkningen av en ny tröskelmatris T.The incoming gray scale image I is also processed by a statistics module 36, which generates image statistics data S for given sub-areas or subregions of the current grass scale image I. This image statistics data S is conveniently stored in the memory module 31, from which the threshold calculation module it shall begin the calculation of a new threshold matrix T.

Databehandlaren omfattar vidare en reglermodul 37, vilken läser in ett börvärde w, reglerparametrar ll, 12 samt det av analysmodulen 34 beräknade kvalitetsmåttet Q och beräknar en kontrastdjupfaktor k som i sin tur an- vänds av tröskelberäkningsmodulen 33 för beräkning av tröskelmatrisen T.The data processor further comprises a control module 37, which reads in a setpoint w, control parameters ll, 12 and the quality measure Q calculated by the analysis module 34 and calculates a contrast depth factor k which in turn is used by the threshold calculation module 33 for calculating the threshold matrix T.

Det bör inses att var och en av ovanstående moduler 32-37 kan realiseras i databehandlaren 25, i form av en mjukvarustyrd processor, en specialanpassad hårdvaru- lO l5 20 25 30 35 520 474 14 krets, diskreta analoga/digitala komponenter, eller någon kombination därav.It should be understood that each of the above modules 32-37 may be implemented in the data processor 25, in the form of a software controlled processor, a specially adapted hardware circuit, discrete analog / digital components, or any combination. hence.

I den för närvarande föredragna utföringsformen år tröskelberäknings-, analys-, avkodnings- och reglermodul- erna 33-35, 37 realiserade som en mjukvarustyrd mikropro- cessor, medan segmenterings- och statistikmodulerna 32, 36 är realiserade som en ASIC som opererar på stora data- mängder utan att belasta mikroprocessorn. För att ytter- ligare avlasta mikroprocessorn sker inläsningen av grå- skalebilder från sensorn 30 till minnesmodulen 31 via DMA (”Direct Memory Access”).In the presently preferred embodiment, the threshold calculation, analysis, decoding and control modules 33-35, 37 are realized as a software-controlled microprocessor, while the segmentation and statistics modules 32, 36 are realized as an ASIC operating on large data quantities without loading the microprocessor. To further relieve the microprocessor, grayscale images are loaded from the sensor 30 to the memory module 31 via DMA (“Direct Memory Access”).

I fig 4 visas övergripande processteg som utförs i systemet enligt fig 3. I systemet hämtas först en aktuell gråskalebild #n, steg 41. I steg 42 verkställs inläsning av kvalitetsmåttet Q(n-1) för en föregående binär bild och beräkning av en aktuell tröskelmatris T(n) på basis av detta kvalitetsmått. I steg 43 läser sedan segmente- ringsmodulen 32 in den aktuella tröskelmatrisen T(n), jämför denna med den aktuella gråskalebilden och skapar en aktuell binär bild. I steg 44 beräknar analysmodulen 34 ett kvalitetsmått Q(n) på den aktuella binära bilden.Fig. 4 shows overall process steps performed in the system according to Fig. 3. In the system, a current grayscale image #n is first retrieved, step 41. In step 42, reading of the quality measure Q (n-1) for a previous binary image and calculation of a current threshold matrix T (n) on the basis of this quality measure. In step 43, the segmentation module 32 then reads in the current threshold matrix T (n), compares this with the current gray scale image and creates a current binary image. In step 44, the analysis module 34 calculates a quality measure Q (n) of the current binary image.

Efter steg 44 àtervänder exekveringen till steg 41.After step 44, the execution returns to step 41.

I det följande kommer tröskelberäkningsmodulen 33, analysmodulen 36 och reglermodulen 37 att beskrivas var för sig i större detalj.In the following, the threshold calculation module 33, the analysis module 36 and the control module 37 will be described separately in greater detail.

Tröskelberåkningsmodulen Tröskelberåkningsmodulen 33 (fig 1) är utformad att skatta kontrasten i ett antal delområden av den aktuella gråskalebilden I och att utifrån kontrasten beräkna ett tröskelvärde per delomràde. En utförlig beskrivning av tröskelberäkningsmodulen återfinns i sökandens svenska patentansökan SE 0102254-0, vilken införlivas häri genom denna hänvisning. Nedan följer en sammanfattning av de principer som ligger till grund för tröskelberäknings- modulen, följt av ett utföringsexempel.The Threshold Calculation Module The Threshold Calculation Module 33 (Fig. 1) is designed to estimate the contrast in a number of sub-areas of the current gray scale image I and to calculate a threshold value per sub-area from the contrast. A detailed description of the threshold calculation module can be found in the applicant's Swedish patent application SE 0102254-0, which is incorporated herein by this reference. Below is a summary of the principles that form the basis for the threshold calculation module, followed by an exemplary embodiment.

Kontrasten inom respektive delområde skattas som differensen mellan ett bakgrundsluminansvàrde och ett 10 15 20 25 30 35 520 474 15 objektluminansvärde, vilka i sin tur skattas för respek- tive delomràde. Lämpligen skattas bakgrundsluminansvärdet och objektluminansvärdet på basis av första ordningens statistik av luminansvärdena hos de bildelement som ingår i respektive delomràde. Första ordningens statistik, exempelvis innefattande det minsta värdet, det största värdet, medianvärdet, medelvärdet och summan av bildele- mentens luminansvärden inom ett delområde, kan extraheras pà beräkningseffektivt vis från gråskalebilden I via statistikmodulen 36.The contrast within each sub-area is estimated as the difference between a background luminance value and an object luminance value, which in turn are estimated for each sub-area. Suitably, the background luminance value and the object luminance value are estimated on the basis of first-order statistics by the luminance values of the picture elements included in each sub-area. First-order statistics, for example including the smallest value, the largest value, the median value, the mean value and the sum of the luminance values of the picture elements within a sub-area, can be extracted computationally from the gray scale image I via the statistics module 36.

I fallet med gråskalebilder med mörka objekt mot en ljus bakgrund kan bakgrundsluminansvärdet skattas på basis av det största luminansvärdet hos bildelementen inom respektive delomràde. Alternativt kan bakgrundslumi- nansvärdet skattas på basis av medelvärdet av luminans- värdena hos bildelementen inom respektive delomràde.In the case of grayscale images with dark objects against a light background, the background luminance value can be estimated on the basis of the largest luminance value of the picture elements within each sub-area. Alternatively, the background luminance value can be estimated on the basis of the average value of the luminance values of the picture elements within each sub-area.

Enligt ett annat alternativ skattas bakgrundsluminans- värdet på basis av ett percentilvärde, t ex i intervallet 80-95, för luminansvärdena inom respektive delomràde.According to another alternative, the background luminance value is estimated on the basis of a percentile value, for example in the interval 80-95, for the luminance values within each sub-area.

På motsvarande vis kan objektluminansvärdet skattas på basis av det minsta luminansvärdet hos bildelementen inom respektive delomràde.Correspondingly, the object luminance value can be estimated on the basis of the smallest luminance value of the picture elements within each sub-area.

Ovanstående princip kan förfinas genom att bak- grundsluminansvärdena och objektluminansvärdena skattas för bakgrundsdelomràden respektive objektdelomràden vars storlekar är anpassade för optimal skattning av respek- tive värde, såsom kommer att framgå av nedanstående exempel.The above principle can be refined by estimating the background luminance values and the object luminance values for background sub-areas and object sub-areas, respectively, whose sizes are adapted for optimal estimation of the respective value, as will be shown in the examples below.

I fig 5 exemplifieras beräkningar av en tröskelmat- ris enligt ovannämnda principer, utgående från gråskale- bilder om 96 x 96 bildelement. Varje gràskalebild är indelad i 64 (8 x 8) objektdelomràden Islo, som vart och ett innehåller 12 x 12 bildelement, respektive 256 (16 x 16) bakgrundsdelomràden Islb, som vart och ett innehåller 6 x 6 bildelement. Delomràdena Islo, Islb är avgränsade med tunna linjer i fig 5. Denna indelning används dels av statistikmodulen 36 för generering av 10 15 20 25 30 35 520 474 16 bildstatistikdata S, dels av tröskelberäkningsmodulen 33 för beräkning av tröskelmatrisen T. Indelningen är an- passad till kodningsmönstret i fig l.Fig. 5 exemplifies calculations of a threshold matrix according to the above-mentioned principles, based on grayscale images of 96 x 96 pixels. Each grass-scale image is divided into 64 (8 x 8) Islo object sub-areas, each containing 12 x 12 pixels, and 256 (16 x 16) background areas, respectively, Islb, each containing 6 x 6 pixels. The sub-areas Islo, Islb are delimited by thin lines in Fig. 5. This division is used partly by the statistics module 36 for generating image statistics data S, and partly by the threshold calculation module 33 for calculating the threshold matrix T. The division is adapted to the coding pattern in Fig. 1.

I detta exempel beräknas sàledes tröskelmatrisen utgående fràn bildstatistikdata för två olika uppsätt- ningar delomràden, dels objektdelomràden, dels bakgrunds- delomràden. Objektdelomrádena och bakgrundsdelomràdena överlappar varandra och täcker var för sig hela den del av bilden som skall binäriseras. Objektdelomràdena är så stora att de med säkerhet innehàller åtminstone en del av en markering. Den övre gränsen för objektdelomràdenas storlek ges av den minsta acceptabla upplösningen på tröskelmatrisen, vilken bl a beror av luminansvariation- ernas spatiala storlek i bilderna. Bakgrundsdelomràdena kan däremot göras mindre, eftersom de endast behöver vara sà stora att de med säkerhet innehåller bildelement som är representativa för bildens lokala bakgrundsluminans, dvs de bör vara större än varje markering i bilden. Här- vid bör hänsyn tas till eventuell förstoring som resultat av perspektiveffekter.In this example, the threshold matrix is thus calculated on the basis of image statistics data for two different sets of sub-areas, partly object sub-areas and partly sub-sub-areas. The object sub-areas and the background sub-areas overlap and each cover the entire part of the image to be binaryized. The object sub-areas are so large that they certainly contain at least part of a selection. The upper limit for the size of the object sub-areas is given by the smallest acceptable resolution of the threshold matrix, which depends, among other things, on the spatial size of the luminance variations in the images. The background sub-areas, on the other hand, can be made smaller, as they only need to be so large that they certainly contain picture elements that are representative of the local background luminance of the image, ie they should be larger than each mark in the image. In doing so, any magnification as a result of perspective effects should be taken into account.

Det bör också noteras att objektdelomrädena Islo i detta exempel är dimensionerade att omfatta ett helt antal (i detta fall fyra) bakgrundsdelomràden Islb, vilket underlättar beräkningen av tröskelmatrisen T. (fig l) beräkna ett tröskelvärde för varje bakgrundsdelomràde, Tröskelberäkningsmodulen 33 är utformad att enligt: Ti = bi - k * (bi - oi), varvid bi är skattningen av bakgrundsluminansen inom bakgrundsdelomràdet Islb, och oi är skattningen av objektluminansen inom det större objektdelomràde IS,O som överlappar det aktuella bakgrundsdelomràdet Islb. I detta exempel skattas bakgrundsluminansen som det största lumi- nansvärdet inom bakgrundsdelomràdet och objektluminansen som det minsta luminansvärdet inom objektdelomràdet. I lO l5 20 25 30 35 520 474 17 detta utföringsexempel extraherar således statistikmodu- len 36 (fig 3) bildstatistikdata S i form av det största luminansvärdet (max) och det minsta luminansvärdet (min) inom delområdena Islb respektive ISIO.It should also be noted that the object sub-areas Islo in this example are dimensioned to comprise a whole number (in this case four) background sub-areas Islb, which facilitates the calculation of the threshold matrix T. (Fig. 1) to calculate a threshold value for each background sub-area. : Ti = bi - k * (bi - oi), where bi is the estimate of the background luminance within the background subarea Islb, and oi is the estimate of the object luminance within the larger object subarea IS, O which overlaps the current background subarea Islb. In this example, the background luminance is estimated as the largest luminance value within the background subarea and the object luminance as the smallest luminance value within the object subarea. Thus, in this embodiment, the statistics module 36 (Fig. 3) extracts image statistics data S in the form of the largest luminance value (max) and the smallest luminance value (min) within the sub-areas Islb and ISIO, respectively.

Kontrastdjupfaktorn k (OS k S 1) styr pà vilket kontrastdjup som tröskelvärdet skall sättas. För k = O sätts tröskelvärdet i nivå med bakgrundsluminansvärdet, och för k = l sätts tröskelvärdet i nivå med objektlumi- nansvärdet. Tröskelberäkningsmodulen 33 erhåller ett aktuellt värde pä faktorn k från reglermodulen 37. I det beskrivna utföringsexemplet àsätts denna faktor samma värde för alla delområden.The contrast depth factor k (OS k S 1) controls the contrast depth at which the threshold value is to be set. For k = 0, the threshold value is set at the level of the background luminance value, and for k = l, the threshold value is set at the level of the object luminance value. The threshold calculation module 33 receives a current value of the factor k from the control module 37. In the described exemplary embodiment, this factor is assigned the same value for all sub-areas.

Efter ovanstående beräkning innehåller tröskel- matrisen T ett tröskelvärde Ti per bakgrundsdelområde Islb (fig 5).After the above calculation, the threshold matrix T contains a threshold value Ti per background sub-area Islb (Fig. 5).

Analysmodulen Analysmodulen 34 (fig 3) är utformad att beräkna kvalitetsmåttet Q på den aktuella binära bilden. Valet av kvalitetsmàtt är givetvis beroende på vilken typ av objekt som skall identifieras i gråskalebilderna.The analysis module The analysis module 34 (Fig. 3) is designed to calculate the quality measure Q on the current binary image. The choice of quality measure of course depends on the type of object to be identified in the grayscale images.

Vid identifiering av markeringarna i positionskod- ningsmönstret enligt fig 1 har det visat sig lämpligt att basera kvalitetsmåttet på objektens storlek i den binära bilden. Kvalitetsmàttet beräknas lämpligen för hela bild~ en, eller åtminstone för ett bildomràde som med säkerhet innehåller flera objekt. Därmed minimeras inverkan på kvalitetsmàttet från den geometriska distorsion som upp- kommer när pennan, och därmed areasensorn, snedställs relativt det positionskodade underlaget.When identifying the markings in the position coding pattern according to Fig. 1, it has proved appropriate to base the quality measure on the size of the objects in the binary image. The quality measure is suitably calculated for the whole image, or at least for an image area that certainly contains several objects. This minimizes the impact on the quality measure from the geometric distortion that arises when the pen, and thus the area sensor, is skewed relative to the position-coded substrate.

Analysmodulen 34 kan således vara utformad att sum- mera antalet objektpixlar (värde O) i den binära bilden, för beräkning av den totala objektstorleken.The analysis module 34 can thus be designed to sum the number of object pixels (value 0) in the binary image, for calculating the total object size.

Analysmodulen 34 kan alternativt vara utformad att beräkna en genomsnittlig objektstorlek i bilden genom att summera antalet objektpixlar, identifiera antalet grupper av sammanhängande objektpixlar som kan förmodas bilda objekt, samt bilda kvoten av dessa antalsvärden. ..... 10 15 20 25 30 35 520 474 fffçff 18 Enligt ett ytterligare alternativ kan analysmodulen 34 vara utformad att identifiera alla grupper av samman- hängande objektpixlar som kan förmodas bilda objekt, be- räkna storleken pà varje grupp, samt bilda ett histogram över gruppernas storleksfördelning eller extrahera något mått därpå.The analysis module 34 may alternatively be designed to calculate an average object size in the image by summing the number of object pixels, identifying the number of groups of contiguous object pixels that can be assumed to form objects, and forming the ratio of these number values. ..... 10 15 20 25 30 35 520 474 fffçff 18 According to a further alternative, the analysis module 34 may be designed to identify all groups of contiguous object pixels that can be assumed to form objects, calculate the size of each group, and form a histogram of the size distribution of the groups or extract some measure thereof.

Reglermodulen Reglermodulen kan åskådliggöras som en del av ett reglersystem enligt fig 6. Reglermodulen 60 (motsvarande reglermodulen 37 i fig 3) opererar på en process 61, vil- ken verkställs i tröskelberäkningsmodulen 33, segmente- ringsmodulen 32 och analysmodulen 34 i fig 3. Regler- modulen 37 är utformad att på basis av differensen e mellan börvärdet w och ett ärvärde, i form av kvalitets- måttet Q på en föregående binär bild, beräkna kontrast- djupfaktorn k. Denna kontrastdjupfaktor k används sedan av processen 61 för att beräkna en aktuell tröskelmatris och med denna skapa en aktuell binär bild från en aktuell gråskalebild.The control module The control module can be illustrated as part of a control system according to Fig. 6. The control module 60 (corresponding to the control module 37 in Fig. 3) operates on a process 61, which is executed in the threshold calculation module 33, the segmentation module 32 and the analysis module 34 in Fig. the module 37 is designed to calculate the contrast depth factor k on the basis of the difference e between the setpoint w and an actual value, in the form of the quality measure Q in a previous binary image. This contrast depth factor k is then used by the process 61 to calculate a current threshold matrix and with this create a current binary image from a current grayscale image.

I fig 7 återges mer i detalj de processteg som ut- förs i systemet enligt fig 3 och 6. I ett första steg 71 inläses bildstatistik S(n) för den aktuella gråskalebild- en. I steg 72, som utförs i tröskelberäkningsmodulen 33 enligt ovanstående beskrivning, beräknas en aktuell tröskelmatris T(n) baserat på en föregående kontrastdjup- faktor k(n-1) och bildstatistiken S(n}. Därefter, i steg 73, binäriseras den aktuella gråskalebilden med tröskel- matrisen T(n). I efterföljande steg 74 beräknas den genomsnittliga objektstorleken i den aktuella binära bilden och används som kvalitetsmättet Q(n). I steg 75, som kommer att diskuteras mer i detalj nedan, beräknas sedan en ny kontrastdjupfaktor k(n). Därefter återgår exekveringen till steg 71.Fig. 7 shows in more detail the process steps performed in the system according to Figs. 3 and 6. In a first step 71, image statistics S (n) are read for the current grayscale image. In step 72, which is performed in the threshold calculation module 33 as described above, a current threshold matrix T (n) is calculated based on a previous contrast depth factor k (n-1) and the image statistics S (n}. Then, in step 73, the current In the subsequent step 74, the average object size in the current binary image is calculated and used as the quality measure Q (n). In step 75, which will be discussed in more detail below, a new contrast depth factor is then calculated. k (n) Then the execution returns to step 71.

Ovanstående reglersystem omfattar en reglerloop av första ordningen, i det att den nya tröskelmatrisen beräknas innan nästa gråskalebild binäriseras. va... lO 15 20 25 30 35 520 474 §:;;; 19 I fig 8 visas överföringsfunktionen för processen 61 i fig 6. Närmare bestämt visas ett uppmätt förhållande mellan medelobjektstorleken Q och kontrastdjupfaktorn k för sex olika underlag med positionskodningsmönster enligt fig 1. Såväl papperskvalitet som objektstorlek varierar mellan de olika underlagen. I fig 8 indikerar de heldragna kurvorna mätpunkterna för respektive underlag, och de streckade linjerna indikerar linjära approxima- tioner till mätpunkterna. Det framgår att överförings- funktionen kan approximeras med en linjär modellfunktion kring ett börvärde w: Q(n) = a - k(n-1) + C, där a och C är konstanter, och n är tidssteget.The above control system comprises a control loop of the first order, in that the new threshold matrix is calculated before the next grayscale image is binaryized. va ... lO 15 20 25 30 35 520 474 §: ;;; Fig. 8 shows the transfer function of the process 61 in Fig. 6. More specifically, a measured relationship between the average object size Q and the contrast depth factor k is shown for six different substrates with position coding patterns according to Fig. 1. Both paper quality and object size vary between the different substrates. In Fig. 8, the solid curves indicate the measuring points for the respective substrates, and the dashed lines indicate linear approximations to the measuring points. It can be seen that the transfer function can be approximated with a linear model function around a setpoint w: Q (n) = a - k (n-1) + C, where a and C are constants, and n is the time step.

Härvid kan reglerloopen uttryckas som en gängse PI-loop: km) = al - (w(n) ~ om) + az - 2 (wrm) - omm), m=0 där w(n) är den önskade medelobjektstorleken, och al, as är reglerparametrar.In this case, the control loop can be expressed as a common PI loop: km) = al - (w (n) ~ om) + az - 2 (wrm) - omm), m = 0 where w (n) is the desired average object size, and al , as are control parameters.

Genom att definiera Ak(n) = k(n) - k(n-1) kan man eliminera summeringen genom omskrivning av reglerloopen SOTH man) = al - (Awzn) - Adm) + az - (w(n) - Qfm).By defining Ak (n) = k (n) - k (n-1) you can eliminate the summation by rewriting the control loop SOTH man) = al - (Awzn) - Adm) + az - (w (n) - Qfm) .

Detta resulterar i AQm)=a-A1<(n-1)=a-al-(Aw(n-1)-AQ(n-1))+ +a-a2-(w(n-1)-Q(n-1)) i vilket kan skrivas om och transformeras till en överföringsfunktion för ett àterkopplat system: l0 15 20 25 30 (a-al+a-a2)-z'l-a-al-z"2 Gc(z) = l+(a-al+a-a2-1)-z'l-a-al-z"2' Överföringsfunktionens poler blir: Z=1-a-al-a-a2iJfi-a-al-a-azf +a-a1 2 4 Placeringen av polerna påverkar reglersystemets stabilitet och svarstid. Exempelvis är det ett kriterium för stabilitet att alla poler ligger inom enhetscirkeln.This results in AQm) = a-A1 <(n-1) = a-al- (Aw (n-1) -AQ (n-1)) + + a-a2- (w (n-1) -Q (n-1)) in which can be rewritten and transformed into a transfer function for a feedback system: (a-al + a-a2) -z'l-a-al-z "2 Gc (z ) = 1 + (a-al + a-a2-1) -z'l-a-al-z "2 'The poles of the transfer function become: Z = 1-a-al-a-a2iJ fi- a-al-a-azf + a-a1 2 4 The position of the poles affects the stability and response time of the control system. For example, it is a criterion for stability that all poles are within the unit circle.

Det är således möjligt att undersöka polerna med avse- ende på reglerparametrarna al, az, för ett givet värde på konstanten a, och utifrån detta välja värden på regler- parametrarna som ger önskad prestanda hos reglersystemet.It is thus possible to examine the poles with respect to the control parameters a1, az, for a given value of the constant a, and on this basis select values of the control parameters which give the desired performance of the control system.

Generellt sett bör reglersystemet vara så snabbt som möj- ligt, dock inte till priset av alltför mycket oscilla- tioner.In general, the control system should be as fast as possible, but not at the cost of too many oscillations.

Ett samband för reglerloopen kommer nu att fast- ställas. Om man inför e(n) = w(n) - Q(n) erhålls Ak(n) = k(n) - k(n - l) = al -Ae(n) + az -e(n) <ï> km) = km - 1) + a, - (em) - em - 1)) + az - em) Integrationen ingår implicit i ovanstående samband.A connection for the regulatory loop will now be established. If you enter e (n) = w (n) - Q (n) you get Ak (n) = k (n) - k (n - l) = al -Ae (n) + az -e (n) <ï > km) = km - 1) + a, - (em) - em - 1)) + az - em) The integration is implicitly included in the above relationship.

Därmed undviks problem med integrationsuppvridning. Om utsignalen blir mättad vid tidpunkten n kan med andra ord det mättade värdet användas, och vid tidpunkten n+l kan ovanstående samband åter användas utan hänsyn till före- gående händelser.This avoids problems with integration distortion. In other words, if the output signal becomes saturated at time n, the saturated value can be used, and at time n + 1, the above relationship can be used again without regard to previous events.

För att återvända till placeringen av polerna, så är denna enligt ovanstående beroende av värdet på a, vilket i sin tur kan variera kraftigt beroende på sensoranord- ningens driftsbetingelser, exempelvis som resultat av förändringar i egenskaper hos underlaget, såsom objektens storlek, formkvalitet eller absorbans. Om al och az sätts -.-.. 10 15 20 25 30 520 474 2l till konstanta värden måste dessa väljas i enlighet med det högsta tänkbara värdet pà |a| för att säkerställa att oscillationer ej uppstår under nägra förhållanden. En sä- dan reglerloop skulle kunna vara användbar i vissa fall, när man kan tolerera ett förhållandevis långsamt svar pä snabba förändringar i sensoranordningens omgivning.To return to the location of the poles, this is as above dependent on the value of a, which in turn can vary greatly depending on the operating conditions of the sensor device, for example as a result of changes in properties of the substrate, such as object size, shape quality or absorbance . If al and az are set -.- .. 10 15 20 25 30 520 474 2l to constant values, these must be selected according to the highest possible value of | a | to ensure that oscillations do not occur under any conditions. Such a control loop could be useful in some cases, when one can tolerate a relatively slow response to rapid changes in the environment of the sensor device.

I ett alternativt utförande utformas reglerloopen att arbeta med väsentligen konstanta poler, oberoende av driftsbetingelse. Detta utförande drar nytta av det fak- tum att modellfunktionen Q(n) = a -k(n-l) + C, för alla relevanta driftsförhàllanden, uppvisar en väsentligen oberoende driftspunkt. Av fig 8 framgår att alla modell- funktionskurvor väsentligen konvergerar mot en drifts- punkt (Pd: Qd, kd), i detta exempel med en medelobjekt- storlek kring -l för en kontrastfaktor kring 1,05. Efter- som Q(n) = w = konstant i “steady state" kan värdet på a beräknas i stället för sättas till en konstant: _ W_Qd I ljuset av ovanstående kan reglersystemet, genom denna beräkning av a, modifieras att uppvisa väsentligen konstanta poler: a'a1=ß1<:>a1(n):ß1' a och a az = ßz ca azüfl = ßè. kÛï;hñ:¶'kd. d Detta ger den slutliga versionen av reglerloopen för binäriseringen: lO 15 20 25 30 520 474 22 km) = km - 1) + alm) - (an) - em - 1)) + azm) - em) e(n) = w - Q(n) afln) = ßi ' k(n _ l) _ kd w - Qd azfil) = ßz ' k(n _ 1)* kd w - Qd där ßl och ßz väljs i enlighet med ovanstående dis- kussioner kring stabilitet och svarstid, w är den önskade medelobjektstorleken efter binärisering, och Q(n) är medelobjektstorleken efter binärisering av den aktuella bilden. och börvärdet w kan fastställas genom testning, De optimala värdena på reglerparametrarna Bl, ßz såsom inses av fackmannen pà området. Exempelvis har framgångs- rika tester utförts med ßl = O, dvs användning av en helt integrerande reglerlOOp, ßz = ~l, och w = 4, dvs en medelobjektarea om 4 pixlar.In an alternative embodiment, the control loop is designed to work with substantially constant poles, regardless of operating condition. This design takes advantage of the fact that the model function Q (n) = a -k (n-1) + C, for all relevant operating conditions, has a substantially independent operating point. Fig. 8 shows that all model function curves substantially converge towards an operating point (Pd: Qd, kd), in this example with an average object size around -1 for a contrast factor around 1.05. Since Q (n) = w = constant in "steady state", the value of a can be calculated instead of set to a constant: _ W_Qd In the light of the above, the control system, by this calculation of a, can be modified to have substantially constant poles : a'a1 = ß1 <:> a1 (n): ß1 'a och a az = ßz ca azü fl = ßè. kÛï; hñ: ¶'kd. d This gives the final version of the control loop for binaryization: lO 15 20 25 30 520 474 22 km) = km - 1) + alm) - (an) - em - 1)) + azm) - em) e (n) = w - Q (n) a fl n) = ßi 'k (n _ l) _ kd w - Qd az fi l) = ßz 'k (n _ 1) * kd w - Qd where ßl and ßz are selected according to the above discussions about stability and response time, w is the desired average object size after binaryization, and Q (n) is the average object size after binaryization of the image in question, and the setpoint w can be determined by testing, The optimal values of the control parameters B1, ßz as will be appreciated by those skilled in the art For example, successful tests have been performed with ß1 = 0, i.e. using a fully integrative rule erlOOp, ßz = ~ l, and w = 4, ie an average object area of 4 pixels.

Som ett alternativ till att sätta medelobjektstor- leken Q(n) lika med börvärdet w vid parametriseringen av modellfunktionen, för ästadkommande av väsentligen konstanta poler oberoende av driftsbetingelse, kan man använda den faktiska medelobjektstorleken efter binärise- Detta angreppssätt kan potentiellt ge ett ännu snabbare regler- ring av den aktuella bilden, dvs ärvärdet Q(n). system, dock till priset av en ökad risk för instabilite- ter i reglersystemet. I det exempel som ges ovan och som åskådliggörs i fig 8 försämras emellertid inte systemets stabilitet i nämnvärd omfattning eftersom modellfunktion- en även på avstånd från börvärdet w väl återspeglar det verkliga beroendet mellan medelobjektstorleken Q och kontrastdjupfaktorn k.As an alternative to setting the mean object size Q (n) equal to the setpoint w in the parameterization of the model function, to achieve substantially constant poles regardless of operating condition, one can use the actual mean object size after binary. This approach can potentially provide even faster rules. - ring of the current image, ie the actual value Q (n). system, however, at the cost of an increased risk of instabilities in the control system. However, in the example given above and illustrated in Fig. 8, the stability of the system does not deteriorate to any appreciable extent since the model function, even at a distance from the setpoint w, well reflects the true dependence between the mean object size Q and the contrast depth factor k.

I utförandet enligt fig 3-8 sätts ett börvärde som förutsätts vara adekvat för alla driftsbetingelser. Det kan emellertid vara svårt att fastställa ett sådant uni- versellt börvärde. I ovanstående exempel används objekt- storleken i de binära bilderna som kvalitetsmàtt. Den optimala objektstorleken, dvs börvärdet, sätts härvid med .-»»-. 10 15 20 25 30 35 520 474 23 kännedom om den nominella storleken på markeringarna i kodningsmönstret (jfr fig l) och ev förstoring i avbild- ningen från underlaget till areasensorn. Det har dock visat sig att den optimala objektstorleken även är bero- ende av driftsbetingelserna, framförallt egenskaper hos underlaget, såsom underlagets reflektans av IR-ljus, underlagets ytjämnhet, trycksvärtans absorbans av IR- ljus, markeringarnas svärtningsgrad, etc. Vidare kan mar- keringarnas faktiska storlek avvika från sitt nominella värde, exempelvis p g a störningar vid anbringandet av markeringarna.In the embodiment according to Figs. 3-8, a setpoint is set which is assumed to be adequate for all operating conditions. However, it can be difficult to determine such a universal setpoint. In the example above, the object size in the binary images is used as a quality measure. The optimum object size, ie the setpoint, is set to .- »» -. 10 15 20 25 30 35 520 474 23 knowledge of the nominal size of the markings in the coding pattern (cf. Fig. 1) and possible magnification in the image from the substrate to the area sensor. However, it has been found that the optimal object size also depends on the operating conditions, especially properties of the substrate, such as the substrate's reflectance of IR light, the surface smoothness of the substrate, the ink absorption of IR light, the degree of blackening of the markings, etc. actual size deviate from its nominal value, for example due to disturbances in the application of the markings.

I fig 9 visas ett alternativt utförande som möter ovanstående behov. Reglersystemet enligt fig 9 innehåller en reglermodul 90, som motsvarar reglermodulen 60 i fig 6 och som opererar på en process 91, vilken motsvarar pro- cessen 61 i fig 6. Reglersystemet innehåller vidare en beräkningsmodul 92 för börvärde, vilken intermittent upp- daterar börvärdet w utgående från den aktuella kontrast- djupfaktor k som utmatas av reglermodulen 90.Fig. 9 shows an alternative embodiment which meets the above needs. The control system according to Fig. 9 contains a control module 90, which corresponds to the control module 60 in Fig. 6 and which operates on a process 91, which corresponds to the process 61 in Fig. 6. The control system further contains a calculation module 92 for setpoint, which intermittently updates the setpoint w based on the current contrast depth factor k output from the control module 90.

Det har nämligen överraskande visat sig att det föreligger ett samband mellan den optimala objektarean i binära bilder för en given driftsbetingelse (med givna egenskaper hos underlaget) och motsvarande kontrastdjup- faktor som beräknas av reglermodulen enligt föregående beskrivning. Med optimal objektarea kan avses det bör- värde som för en underlagstyp ger bäst identifiering av objekten, sett över alla tillåtna snedställningar av pennan relativt underlaget. Det finns olika tänkbara kri- terier på den optimala objektarean, såsom minst antal felaktigt identifierade objekt, störst säkerhet vid be- räkning av positioner, etc.Namely, it has surprisingly been found that there is a relationship between the optimal object area in binary images for a given operating condition (with given properties of the substrate) and the corresponding contrast depth factor calculated by the control module according to the previous description. Optimal object area can refer to the setpoint that for a substrate type provides the best identification of the objects, seen over all permissible misalignments of the pen relative to the substrate. There are various possible criteria for the optimal object area, such as the least number of incorrectly identified objects, the greatest certainty when calculating positions, etc.

Fig 10 visar en del av fig 8 i närmare detalj. För varje kurva (heldragna linjer), dvs varje underlag, indi- keras vidare den optimala arbetspunkten (ofylld cirkel), dvs den arbetspunkt som ger en optimal objektarea för respektive underlag. I fig 10 visas även en rät linje som har anpassats till de optimala arbetspunkterna via ..~.-. 10 15 20 25 30 35 520 474 24 regressionsanalys och som ges av funktionssambandet wqx = 5- k + y, där y = 1,4 och 6 = 4,8.Fig. 10 shows a part of Fig. 8 in more detail. For each curve (solid lines), ie each substrate, the optimal working point (unfilled circle) is further indicated, ie the working point that gives an optimal object area for each substrate. Fig. 10 also shows a straight line which has been adapted to the optimal working points via .. ~ .-. 5 15 20 25 30 35 520 474 24 regression analysis and given by the function relation wqx = 5- k + y, where y = 1.4 and 6 = 4.8.

Beräkningsmodulen 92 utgår således från detta funk- tionssamband för att fastställa ett optimalt börvärde.The calculation module 92 is thus based on this functional relationship in order to determine an optimal setpoint.

I vissa fall kan det av reglertekniska skäl vara lämpligt att inte uppdatera börvärdet under varje itera- tion av reglerloopen. Således kan kontrastdjupfaktorn k från reglermodulen 90 medelvärdesbildas under ett antal iterationer innan ett uppdaterat börvärde w beräknas och utmatas till reglermodulen 90. Det kan vidare vara lämp- ligt att endast tillåta uppdatering av börvärdet inom ett börvärdesintervall.In some cases, for technical reasons, it may be appropriate not to update the setpoint during each iteration of the control loop. Thus, the contrast depth factor k from the control module 90 can be averaged over a number of iterations before an updated setpoint w is calculated and output to the control module 90. It may further be appropriate to allow updating of the setpoint only within a setpoint range.

Det må också påpekas att stabilitetskriterierna för reglersystemet som helhet kan ändras i förhållande till reglersystemet i fig 6, varför värdena på reglerparamet- rarna ah cb sannolikt är annorlunda. I fallet med ett reglersystem med konstanta poler har ßl = O och ßz = -0,2 befunnits ge tillfredsställande resultat.It should also be pointed out that the stability criteria for the control system as a whole can be changed in relation to the control system in Fig. 6, which is why the values of the control parameters ah cb are probably different. In the case of a control system with constant poles, ßl = 0 and ßz = -0.2 have been found to give satisfactory results.

I det följande beskrivs med hänvisning till fig 11 en implementation av det alternativa utförandet enligt ovan.In the following, with reference to Fig. 11, an implementation of the alternative embodiment as described above is described.

Först verkställs en initiering 110 av reglermodul- en. I steg 111, läser reglermodulen in startvärden, dvs aktuell kontrastdjupfaktor k(O), aktuellt fel e(0) och aktuellt börvärde w(O). Typiska värden är k(O) = 0,6; e(0) = O; w(O) = 4,28. Startvärdena k(O) och w(O) kan vara konstanta standardvärden, eller uppdateras varje gång pennan stängs av, exempelvis med det senaste beräk- nade värdet på kontrastdjupfaktorn respektive börvärdet.First, an initiation 110 of the control module is performed. In step 111, the control module reads in start values, ie the current contrast depth factor k (O), the current error e (0) and the current setpoint w (0). Typical values are k (O) = 0.6; e (0) = O; w (O) = 4.28. The initial values k (O) and w (O) can be constant default values, or are updated each time the pen is switched off, for example with the most recently calculated value of the contrast depth factor and the setpoint, respectively.

I steg 112 läser reglermodulen in reglerparametrarna ßh ßz- En överordnad räknare n àterställs till 1 i steg 113, varpå en huvudreglerloop startas i steg 114.In step 112, the control module reads in the control parameters ßh ßz- A parent counter n is reset to 1 in step 113, whereupon a main control loop is started in step 114.

I samband därmed, i steg 115, läser tröskelberäk- ningsmodulen in bildstatistik S(n), vilken tidigare har beräknats av statistikmodulen för en aktuell gråskalebild I(n). Utifrån bildstatistiken S(n) skattar tröskelberäk- -.«... 10 l5 20 25 30 35 520 474 25 ningsmodulen en bakgrundsmatris BG(n) och en objektmatris O(n) innehållande bakgrundsluminansvärden respektive ob- jektluminansvärden för givna delområden i gràskalebilden I(n). I steg 116 beräknar så tröskelberäkningsmodulen tröskelmatrisen T(n) baserat pà bakgrundmatrisen BG(n), objektmatrisen O(n) och kontrastdjupfaktorn k(n-1).In connection with this, in step 115, the threshold calculation module reads in image statistics S (n), which has previously been calculated by the statistics module for a current grayscale image I (n). Based on the image statistics S (n), the threshold calculation estimates a background matrix BG (n) and an object matrix O (n) containing background luminance values and object luminance values for given sub-areas in the grayscale image I, respectively. (n). In step 116, the threshold calculation module then calculates the threshold matrix T (n) based on the background matrix BG (n), the object matrix O (n) and the contrast depth factor k (n-1).

I steg 117 läser segmenteringsmodulen in gràskale- bilden I(n), om sä inte redan har skett tidigare, och tröskelmatrisen T(n), varpà gräskalebilden I(n) binäri- seras med användning av tröskelmatrisen T(n). Resultatet är en aktuell binär bild B(n).In step 117, the segmentation module reads in the grass scale image I (n), if it has not already done so before, and the threshold matrix T (n), whereupon the grass scale image I (n) is binaryized using the threshold matrix T (n). The result is a current binary image B (n).

Därefter, i steg 118, behandlar analysmodulen den binära bilden B(n) och beräknar medelobjektstorleken Q(n) inom denna.Then, in step 118, the analysis module processes the binary image B (n) and calculates the average object size Q (n) within it.

Reglermodulen läser i steg 119 in den beräknade medelobjektstorleken Q(n) och beräknar differensen, eller felet, e(n) mellan det aktuella börvärdet w(n-1) och medelobjektstorleken Q(n). I steg 120 beräknar regler- modulen alfin) och 0@(n) utgäende fràn k(n-l), Q(n) och reglerparametrarna ßl respektive ßz. I detta exempel an- vänds således Q(n) för att parametrisera modellfunktion- en. Avslutningsvis, i steg 121, beräknar reglermodulen k(n) pà basis av k(n-1), a1(n), a2(n), e(n) och e(n-1).In step 119, the control module reads in the calculated average object size Q (n) and calculates the difference, or error, e (n) between the current setpoint w (n-1) and the average object size Q (n). In step 120, the control modules al fi n) and 0 @ (n) calculate outputs from k (n-1), Q (n) and the control parameters ßl and ßz, respectively. In this example, Q (n) is thus used to parameterize the model function. Finally, in step 121, the control module calculates k (n) on the basis of k (n-1), a1 (n), a2 (n), e (n) and e (n-1).

Beräkningsmodulen för börvärde (hänvisningsbeteck- ning 92 i fig 9) läser därefter, i steg 122, in den upp- daterade kontrastdjupfaktorn k(n) och beräknar ett nytt börvärde w(n), vilket därefter läses in av reglermodulen.The setpoint calculation module (reference numeral 92 in Fig. 9) then reads, in step 122, the updated contrast depth factor k (n) and calculates a new setpoint w (n), which is then read in by the control module.

Här är kan beräkningsmodulen vara utformad att beräkna det nya börvärdet som funktion av ett medelvärde av ett antal föregående kontrastdjupfaktorer.Here, the calculation module can be designed to calculate the new setpoint as a function of an average of a number of previous contrast depth factors.

Slutligen inkrementeras räknaren n i steg 123, var- på exekveringen återvänder till steg 115 för en ny itera- tion.Finally, the counter n is incremented in step 123, whereupon the execution returns to step 115 for a new iteration.

Alternativa utföringsformer Ovanstående beskrivning är endast avsedd att ge ett exempel pä hur uppfinningen kan realiseras inom ramen för 10 15 20 25 30 35 520 474 26 det skyddsomfång som definieras av efterföljande patent- krav.Alternative embodiments The above description is only intended to give an example of how the invention can be realized within the scope of the scope of protection defined by the appended claims.

Exempelvis kan reglerloopen implementeras som en PID-regulator, dvs en regulator som vid sidan av propor- tionell (P) and integrerande (I) reglering även verk- ställer deriverande (D) reglering. Vidare är det tänkbart att använda linjära reglersystem av högre ordning än l, liksom olika typer av icke-linjära reglersystem, för regleringen av binäriseringsprocessen.For example, the control loop can be implemented as a PID controller, ie a controller which, in addition to proportional (P) and integrative (I) control, also executes derivative (D) control. Furthermore, it is conceivable to use linear control systems of higher order than 1, as well as different types of non-linear control systems, for the control of the binaryization process.

Vidare bör understrykas att ovannämnda delområden kan ha godtycklig form, såsom kvadratisk, rektangulär, triangulär, rombisk, hexagonal etc.Furthermore, it should be emphasized that the above-mentioned sub-areas can have any shape, such as square, rectangular, triangular, rhombic, hexagonal, etc.

I ovanstående exempel beräknas en kontrastdjupfaktor på basis av hela den binära bilden. Det är dock tänkbart att istället fastställa en kontrastdjupfaktor för vart och ett av ett antal styrdelområden i den binära bilden, på basis av ett beräknat kvalitetsmått för respektive styrdelomràde. Den resulterande uppsättningen kontrast- djupfaktorer kan sedan användas för beräkning av tröskel- matrisen.In the above example, a contrast depth factor is calculated based on the entire binary image. However, it is conceivable to instead determine a contrast depth factor for each of a number of control sub-areas in the binary image, on the basis of a calculated quality measure for each control sub-area. The resulting set of contrast depth factors can then be used to calculate the threshold matrix.

Med avseende på det exemplifierande positionskod- ningsmönstret må påpekas att rastret kan ha andra former än ortogonalt, såsom ett rombiskt rutnät, t ex med 60 graders vinkel, ett triangulärt eller hexagonalt rutnät, etc. Vidare kan markeringarna vara förskjutna i andra riktningar än längs rasterlinjerna.With respect to the exemplary position coding pattern, it may be pointed out that the grid may have shapes other than orthogonal, such as a rhombic grid, for example at a 60 degree angle, a triangular or hexagonal grid, etc. Furthermore, the markings may be displaced in other directions than along the grid lines. .

Uppfinningen är dock inte på något vis bunden till det beskrivna positionskodningsmönstret, utan är tillämp- lig även vid identifiering och avkodning av andra kod- ningsmönster.However, the invention is not in any way tied to the described position coding pattern, but is also applicable to the identification and decoding of other coding patterns.

I utföringsexemplet ovan är mönstret optiskt avläs- bart och sensorn således optisk. Det inses dock att de bilder som behandlas enligt uppfinningen kan vara genere- rade på annan väg, t ex genom detektion av kemiska, akus- tiska, elektromagnetiska, kapacitiva eller induktiva parametrar. Likaså inses att uppfinningen kan användas »..-. 520 474 :riff 27 även för identifiering av ljusa markeringar mot en mörk bakgrund.In the exemplary embodiment above, the pattern is optically readable and the sensor is thus optical. It is understood, however, that the images processed according to the invention may be generated in another way, for example by detection of chemical, acoustic, electromagnetic, capacitive or inductive parameters. It will also be appreciated that the invention may be used »..-. 520 474: riff 27 also for identifying light markings against a dark background.

Slutligen bör noteras att uppfinningen är generellt användbar för uppnàende av noggrann, snabb och minnes- effektiv identifiering av objekt i en digital bild ingà- ende i en följd av bilder.Finally, it should be noted that the invention is generally useful for achieving accurate, fast and memory-efficient identification of objects in a digital image included in a sequence of images.

Claims (22)

10 15 20 25 30 35 520 474 28 PATENTKRAV10 15 20 25 30 35 520 474 28 PATENT REQUIREMENTS 1. Sätt att identifiera objekt i en digital bild ingående i en följd av bilder, omfattande steget att jäm- föra luminansvärden hos en aktuell digital bild med minst ett tröskelvärde för att pä basis av jämförelsen skapa en aktuell binäriserad bild, k äI1r1e t e c] att beräkna ett kvalitetsmàtt för den aktuella binärise- rade bilden, och att pà basis av nämnda kvalitetsmätt uppdatera nämnda minst ett tröskelvärde för användning vid binärisering av en följande bild.A method of identifying objects in a digital image included in a sequence of images, comprising the step of comparing the luminance values of a current digital image with at least one threshold value in order to create a current binary image on the basis of the comparison, k äI1r1e tec] to calculate a quality measure for the current binary image, and on the basis of said quality measure update the at least one threshold value for use in binary the following image. 2. Sätt enligt krav 1, varvid nämnda minst ett tröskelvärde uppdateras pä basis av differensen mellan nämnda kvalitetsmàtt och ett kvalitetsbörvärde.A method according to claim 1, wherein said at least one threshold value is updated on the basis of the difference between said quality measure and a quality setpoint. 3. Sätt enligt krav 1 eller 2, varvid nämnda jäm- förelse verkställs pà basis av en tröskelmatris inne- hållande tröskelvärden som är designerade för olika del- områden av den aktuella bilden.A method according to claim 1 or 2, wherein said comparison is performed on the basis of a threshold matrix containing threshold values designated for different sub-areas of the image in question. 4. Sätt enligt krav 3, omfattande stegen att för varje delomràde hos den aktuella bilden skatta ett bak- grundsluminansvärde och ett objektluminansvärde, varvid uppdateringen av tröskelmatrisens tröskelvärden sker pä basis av nämnda bakgrundsluminansvärde och nämnda objekt- luminansvärde.A method according to claim 3, comprising the steps of estimating for each sub-area of the current image a background luminance value and an object luminance value, wherein the updating of the threshold matrix threshold values takes place on the basis of said background luminance value and said object luminance value. 5. Sätt enligt krav 4, varvid tröskelmatrisens tröskelvärden uppdateras pä basis av minst en kontrast- djupfaktor, som anger tröskelvärdets relativa läge mellan objektluminansvärdet och bakgrundluminansvärdet.A method according to claim 4, wherein the threshold values of the threshold matrix are updated on the basis of at least one contrast depth factor, which indicates the relative position of the threshold value between the object luminance value and the background luminance value. 6. Sätt enligt krav 5, varvid kontrastdjupfaktorn fastställs pà basis av nämnda kvalitetsmàtt.A method according to claim 5, wherein the contrast depth factor is determined on the basis of said quality measure. 7. Sätt enligt krav 5 eller 6, varvid kvalitetsmàtt- et beräknas för styrdelomràden av den aktuella binärise- rade bilden, och varvid kontrastdjupfaktorn fastställs för vart och ett av styrdelomràdena.A method according to claim 5 or 6, wherein the quality measure is calculated for the control sub-areas of the current binary image, and wherein the contrast depth factor is determined for each of the control sub-areas. 8. Sätt enligt något av föregående krav, varvid kvalitetsmättet representerar arean av objekten i den aktuella binäriserade bilden. ...n- 10 l5 20 25 30 35 520 474 29A method according to any one of the preceding claims, wherein the quality measure represents the area of the objects in the current binary image. ... n- 10 l5 20 25 30 35 520 474 29 9. Sätt enligt något av kraven 3-8, omfattande steg- et att bilda en reglerloop, varvid varje iteration (n) av reglerloopen omfattar: att läsa in en aktuell bild (I), att skatta den aktuella bildens (I) kontrastfördel- ning, att beräkna tröskelmatrisens (T) tröskelvärden, utgående frän nämnda kontrastfördelning och en under den föregående iterationen beräknad kontrastdjupfaktor (k(n-l)), att skapa en aktuell binäriserad bild (B) på basis av tröskelmatrisen (T), att beräkna ett kvalitetsmått (Q) på den aktuella binäriserade bilden (B), att beräkna ett fel (e(n)) mellan ett börvärde (w) och kvalitetsmàttet (Q), och att beräkna en ny kontrastdjupfaktor (k(n)) ut- gående från den föregående kontrastdjupfaktorn (k(n-1)) och nämnda fel (e(n)).A method according to any one of claims 3-8, comprising the step of forming a control loop, each iteration (s) of the control loop comprising: loading a current image (I), estimating the contrast distribution of the current image (I). calculating the threshold values of the threshold matrix (T), based on said contrast distribution and a contrast depth factor calculated during the previous iteration (k (nl)), to create a current binary image (B) on the basis of the threshold matrix (T), to calculate a quality measure (Q) on the current binary image (B), to calculate an error (e (n)) between a setpoint (w) and the quality measure (Q), and to calculate a new contrast depth factor (k (n)) based on the previous contrast depth factor (k (n-1)) and said error (e (n)). 10. lO. Sätt enligt krav 9, varvid reglerloopen arbetar med väsentligen konstanta poler.10. lO. A method according to claim 9, wherein the control loop operates with substantially constant poles. 11. ll. Sätt enligt krav 10, varvid reglerloopen är ba- serad på en modellfunktion som relaterar kvalitetsmàttet (Q) till den föregående kontrastdjupfaktorn (k(n-1)), vilken modellfunktion omfattar minst en väsentligen gemensam modellarbetspunkt (Pd) för alla digitala bilder i följden av bilder, varvid steget att beräkna en ny kontrastdjupfaktor (k(n)) omfattar steget att paramet- risera modellfunktionen på basis av den föregående kont- rastdjupfaktorn (k(n-1)) och nämnda modellarbetspunkt (Pa)-11. ll. The method of claim 10, wherein the control loop is based on a model function that relates the quality measure (Q) to the previous contrast depth factor (k (n-1)), which model function comprises at least one substantially common model working point (Pd) for all digital images in the sequence. of images, wherein the step of calculating a new contrast depth factor (k (n)) comprises the step of parameterizing the model function on the basis of the previous contrast depth factor (k (n-1)) and said model operating point (Pa) - 12. l2. Sätt enligt krav ll, varvid modellfunktionen åtminstone är definierad kring nämnda börvärde (w).12. l2. A method according to claim 11, wherein the model function is at least defined around said setpoint (w). 13. Sätt enligt krav 12, varvid parametriseringen av modellfunktionen omfattar att sätta kvalitetsmàttet (Q) lika med börvärdet (w). ..... 5 10 15 20 25 30 520 474 30The method of claim 12, wherein the parameterizing the model function comprises setting the quality measure (Q) equal to the setpoint (w). ..... 5 10 15 20 25 30 520 474 30 14. Sätt enligt krav 12, varvid det kvalitetsmàtt (Q) som beräknats för den aktuella binäriserade bilden (B) används vid parametriseringen av modellfunktionen.A method according to claim 12, wherein the quality measure (Q) calculated for the current binary image (B) is used in the parameterization of the model function. 15. Sätt enligt något av kraven 11-14, varvid modellfunktionen är en linjär funktion.A method according to any one of claims 11-14, wherein the model function is a linear function. 16. Sätt enligt något av kraven 11-15, varvid reglerloopen ges av: km)=km-1)+a,(n)-(e(n)-e(n-1))+a2(n)em) e(n)=w-Q(n) kfn-u-kd w= -----_ aln 'ßl Qnv-Qd k(n-l)-l m= --_- azn ß? own-od där ßfi, ßß är konstanter, och k¿, Qd är värdena pà kontrastdjupfaktorn respektive kvalitetsmàttet i nämnda modellarbetspunkt (Pd).A method according to any one of claims 11-15, wherein the control loop is given by: km) = km-1) + a, (n) - (e (n) -e (n-1)) + a2 (n) em) e (n) = wQ (n) kfn-u-kd w = -----_ aln 'ßl Qnv-Qd k (nl) -lm = --_- azn ß? own-od where ß fi, ßß are constants, and k¿, Qd are the values of the contrast depth factor and the quality measure in the said model working point (Pd). 17. Sätt enligt något av kraven 9-16, omfattande steget att intermittent uppdatera börvärdet pà basis av nämnda kvalitetsmàtt.A method according to any one of claims 9-16, comprising the step of intermittently updating the setpoint on the basis of said quality measure. 18. Sätt enligt nàgot av kraven 9-17, omfattande steget att intermittent uppdatera börvärdet (w) pä basis av kontrastdjupfaktorn (k(n)).A method according to any one of claims 9-17, comprising the step of intermittently updating the setpoint (w) on the basis of the contrast depth factor (k (n)). 19. Datorprogram med programkod som vid exekvering i en processorförsedd enhet bringar denna att verkställa binärisering av digitala bilder, k ärirxe t e clcria d av att nämnda programkod vid exekveringen verkställer en äterkopplad reglering av minst en vid binäriseringen an- vänd trösklingsparameter för uppnàende av ett börvärde i form av ett kvalitetsmàtt hos bilderna efter binärise- ringen.19. Computer program with program code which, when executed in a processor-equipped unit, causes it to perform binaryization of digital images, is characterized in that said program code during execution executes a feedback control of at least one threshold parameter used in the binaryization to achieve a setpoint in the form of a quality measure of the images after binaryisation. 20. Datorprogramprodukt som är avläsbar för en pro- cessorförsedd enhet och innefattar ett datorprogram med instruktioner för att bringa enheten att genomföra ett sätt enligt något av kraven 1-18.A computer program product that is readable for a processor-equipped unit and comprises a computer program with instructions for causing the unit to perform a method according to any one of claims 1-18. 21. Handhällen apparat för positionsbestämning, innefattande en sensor (24) för àstadkommande av en följd av bilder av en yta med ett positionskodningsmönster, och 10 15 520 474 31 en processorförsedd behandlingsenhet (25) som är anordnad att utifràn positionskodningsmönstret i bilden beräkna en position, varvid behandlingsenheten omfattar ett dator- program enligt krav 19.A hand-held position determining apparatus, comprising a sensor (24) for producing a sequence of images of a surface with a position coding pattern, and a processor-provided processing unit (25) arranged to calculate a position from the position coding pattern in the image , the processing unit comprising a computer program according to claim 19. 22. Anordning för identifiering av objekt i en di- gital bild ingående i en följd av bilder, omfattande ett segmenteringsorgan (32) som är utformat att läsa in minst ett tröskelvärde och jämföra luminansvärden hos en aktu- ell digital bild med nämnda minst ett tröskelvärde för att pà basis av jämförelsen skapa en aktuell binäriserad bild, k ärin et:e cl 37) som är utformat att beräkna ett kvalitetsmàtt för den aktuella binäriserade bilden och att uppdatera nämnda minst ett tröskelvärde, varvid segmenteringsorganet (32) är anordnat att läsa in det uppdaterade tröskelvärdet för användning vid binärisering av en följande bild.An apparatus for identifying objects in a digital image included in a sequence of images, comprising a segmentation means (32) configured to read in at least one threshold value and compare luminance values of a current digital image with said at least one threshold value. to create, on the basis of the comparison, a current binary image, which is designed to calculate a quality measure of the current binary image and to update said at least one threshold value, the segmentation means (32) being arranged to be read in. the updated threshold for use in binaryization of a subsequent image.
SE0103845A 2001-11-20 2001-11-20 Methods and apparatus for identifying objects in digital images SE520474C2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
SE0103845A SE520474C2 (en) 2001-11-20 2001-11-20 Methods and apparatus for identifying objects in digital images
PCT/SE2002/002104 WO2003044740A1 (en) 2001-11-20 2002-11-20 Method and a hand-held device for identifying objects in a sequence of digital images by creating binarized images based on a adaptive threshold value
US10/300,029 US7283676B2 (en) 2001-11-20 2002-11-20 Method and device for identifying objects in digital images
EP02786335A EP1449171A1 (en) 2001-11-20 2002-11-20 Method and a hand-held device for identifying objects in a sequence of digital images by creating binarized images based on a adaptive threshold value
AU2002349854A AU2002349854A1 (en) 2001-11-20 2002-11-20 Method and a hand-held device for identifying objects in a sequence of digital images by creating binarized images based on a adaptive threshold value

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE0103845A SE520474C2 (en) 2001-11-20 2001-11-20 Methods and apparatus for identifying objects in digital images

Publications (3)

Publication Number Publication Date
SE0103845D0 SE0103845D0 (en) 2001-11-20
SE0103845L SE0103845L (en) 2003-05-21
SE520474C2 true SE520474C2 (en) 2003-07-15

Family

ID=20286029

Family Applications (1)

Application Number Title Priority Date Filing Date
SE0103845A SE520474C2 (en) 2001-11-20 2001-11-20 Methods and apparatus for identifying objects in digital images

Country Status (4)

Country Link
EP (1) EP1449171A1 (en)
AU (1) AU2002349854A1 (en)
SE (1) SE520474C2 (en)
WO (1) WO2003044740A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE212007000046U1 (en) 2006-06-28 2009-03-05 Anoto Ab Operation control and data processing in an electronic pen

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5852434A (en) 1992-04-03 1998-12-22 Sekendur; Oral F. Absolute optical position determination
US5661506A (en) 1994-11-10 1997-08-26 Sia Technology Corporation Pen and paper information recording system using an imaging pen
US5923776A (en) * 1996-05-23 1999-07-13 The United States Of America As Represented By The Secretary Of The Navy Object extraction in images
US5949905A (en) 1996-10-23 1999-09-07 Nichani; Sanjay Model-based adaptive segmentation
US5960111A (en) * 1997-02-10 1999-09-28 At&T Corp Method and apparatus for segmenting images prior to coding
US6195458B1 (en) * 1997-07-29 2001-02-27 Eastman Kodak Company Method for content-based temporal segmentation of video
WO2001043071A2 (en) * 1999-12-10 2001-06-14 British Telecommunications Public Limited Company Image processing
US6678416B1 (en) * 2000-02-08 2004-01-13 University Of Washington Detecting and segmenting local deformation in a tracked video object

Also Published As

Publication number Publication date
SE0103845D0 (en) 2001-11-20
EP1449171A1 (en) 2004-08-25
AU2002349854A1 (en) 2003-06-10
WO2003044740A1 (en) 2003-05-30
SE0103845L (en) 2003-05-21

Similar Documents

Publication Publication Date Title
US7283676B2 (en) Method and device for identifying objects in digital images
US7110604B2 (en) Processing of digital images
JP5378500B2 (en) Method and system for dynamic feature detection
JP6934026B2 (en) Systems and methods for detecting lines in a vision system
US11176655B2 (en) System and method for determining 3D surface features and irregularities on an object
US20110019243A1 (en) Stereoscopic form reader
US5825914A (en) Component detection method
JPH0312750B2 (en)
CN108573471B (en) Image processing apparatus, image processing method, and recording medium
JP2012510235A (en) Image processing for curve correction
JPWO2015008732A1 (en) Optical character recognition device
CN111652205B (en) Text correction method, device, equipment and medium based on deep learning
US20220180499A1 (en) System and method for determining 3d surface features and irregularities on an object
CN113902652B (en) Speckle image correction method, depth calculation method, device, medium, and apparatus
CN114383510B (en) Optical sensing system and optical navigation system
CN110288040A (en) A kind of similar evaluation method of image based on validating topology and equipment
CN112184723B (en) Image processing method and device, electronic equipment and storage medium
CN114092428A (en) Image data processing method, image data processing device, electronic equipment and storage medium
SE520474C2 (en) Methods and apparatus for identifying objects in digital images
US6853751B1 (en) Location of generally rectangular shaped objects in an image
WO2023082417A1 (en) Grabbing point information obtaining method and apparatus, electronic device, and storage medium
CN109218707B (en) Oral scanning system and oral scanning method
CN114022342A (en) Acquisition method and device for acquisition point information, electronic equipment and storage medium
CN111815705A (en) Laser tracker light filtering protective lens pollution identification method and device and electronic equipment
CN115319761B (en) Control method and control system for high-precision manipulator grabbing and robot

Legal Events

Date Code Title Description
NUG Patent has lapsed