Nothing Special   »   [go: up one dir, main page]

SE523700C2 - Förfarande, anordning och minnesmedium för positionsbestämning - Google Patents

Förfarande, anordning och minnesmedium för positionsbestämning

Info

Publication number
SE523700C2
SE523700C2 SE0102255A SE0102255A SE523700C2 SE 523700 C2 SE523700 C2 SE 523700C2 SE 0102255 A SE0102255 A SE 0102255A SE 0102255 A SE0102255 A SE 0102255A SE 523700 C2 SE523700 C2 SE 523700C2
Authority
SE
Sweden
Prior art keywords
value
probabilities
raster
markings
sequence
Prior art date
Application number
SE0102255A
Other languages
English (en)
Other versions
SE0102255D0 (sv
SE0102255L (sv
Inventor
Andreas Olsson
Mats Petter Pettersson
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 SE0102255A priority Critical patent/SE523700C2/sv
Publication of SE0102255D0 publication Critical patent/SE0102255D0/sv
Priority to PCT/SE2002/001246 priority patent/WO2003001441A1/en
Priority to AT02744037T priority patent/ATE434232T1/de
Priority to CNB02812720XA priority patent/CN1301456C/zh
Priority to JP2003507754A priority patent/JP4282474B2/ja
Priority to DE60232659T priority patent/DE60232659D1/de
Priority to EP02744037A priority patent/EP1405255B1/en
Priority to US10/179,263 priority patent/US6732927B2/en
Publication of SE0102255L publication Critical patent/SE0102255L/sv
Priority to US10/819,105 priority patent/US7195166B2/en
Publication of SE523700C2 publication Critical patent/SE523700C2/sv

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • G06F3/0317Detection arrangements using opto-electronic means in co-operation with a patterned surface, e.g. absolute position or relative movement detection for an optical mouse or pen positioned with respect to a coded surface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • G06F3/0317Detection arrangements using opto-electronic means in co-operation with a patterned surface, e.g. absolute position or relative movement detection for an optical mouse or pen positioned with respect to a coded surface
    • G06F3/0321Detection arrangements using opto-electronic means in co-operation with a patterned surface, e.g. absolute position or relative movement detection for an optical mouse or pen positioned with respect to a coded surface by optically sensing the absolute position with respect to a regularly patterned surface forming a passive digitiser, e.g. pen optically detecting position indicative tags printed on a paper sheet

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Communication Control (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

lO 15 20 25 30 35 523 700 2 att entydigt bestämma symbolernas värden. Ibland händer det till och med att en symbol inte skrivs ut över huvud taget. Ett annat problem inträffar om positionskoden är tryckt på en yta som har en egen struktur som kan störa lokaliseringen av symboler i den registrerade bilden.
Strukturer i ytan kan då nämligen uppfattas som symboler av en anordning för positionsbestämning. Det kan också hända att det finns smutspartiklar på ytan som kan upp- fattas som symboler av anordningen. På grund av ovan- stående anledningar föreligger det därför en risk att en registrerad bild inte är användbar för bestämning av en position på ytan och att den därför måste förkastas.
Sammanfattning av uppfinningen Ett ändamål med föreliggande uppfinning är att av- hjälpa ovannämnda problem hos teknikens ståndpunkt.
Detta ändamål uppnås enligt uppfinningen medelst ett förfarande, en anordning och ett minnesmedium på vilket det finns lagrat ett datorprogram vilka har de särdrag som anges i de efterföljande oberoende patentkraven.
Föredragna utföringsformer anges i de efterföljande beroende patentkraven.
En grundtanke med föreliggande uppfinning är att använda sannolikhetsberäkningar för bestämning av en position med hjälp av en positionskod på en yta.
Ett förfarande för positionsbestämning innefattar stegen att registrera en bild av en positionskod på en yta och att bestämma en position på ytan utgående från den registrerade bilden. Förfarandet utmärkes av att det innefattar stegen att identifiera markeringar i den regi- strerade bilden, vilka markeringar definierar ett antal möjliga värden. att, för var och en av de identifierade markeringarna och för vart och ett värdena, Förfarandet utmärkes vidare av steget beräkna en värdesannolikhet att markeringen definierar detta värde. Utifrån värdesanno- likheterna och de motsvarande värdena kan positionen på ytan bestämmas. 10 15 20 25 30 35 523 700 3 Av tidigare diskuterade anledningar är positions- koden på en yta oftast inte helt perfekt. Ett enda värde för en markering kan i regel inte bestämmas med full- ständig säkerhet eftersom det finns en möjlighet att markeringen har ett annat av de möjliga värdena. Enligt uppfinningen beräknas därför en värdesannolikhet för varje markering och för vart och ett av värdena att markeringen har det värdet. Om en markering är entydigt bestämd så kommer den värdesannolikhet som svarar mot markeringens entydigt bestämda värde att vara maximal medan de andra värdesannolikheterna för markeringen är noll. mindre skiljer dess värdesannolikheter sig åt. Om marke- ringen på ett ställe saknas så kommer värdesannolik- heterna för markeringen därför att vara lika stora.
Ju mer osäkert värdet på en markering är desto Föreliggande uppfinning möjliggör således en förhåll- andevis robust avkodning av positionskoden.
Förfarandet innefattar företrädesvis steget att i den registrerade bilden identifiera ett raster bestående av rasterlinjer vilka skär varandra i rasterpunkter.
Rastret har företrädesvis formen av ett rutnät men även andra utformningar är möjliga. Förfarandet innefattar företrädesvis vidare steget att associera var och en av markeringarna med en rasterpunkt. Rastret utgör alltså en typ av referens för markeringarna och rasteranpassningen gör det möjligt att avgöra till vilken rasterpunkt varje markering hör.
Det inträffar ibland att en rasterpunkt inte har några associerade markeringar och då beräknas värde- sannolikheterna med fördel enligt vad som tidigare har beskrivits. Det kan också hända att en rasterpunkt har fler än en associerad markering och då beräknas värde- sannolikheter för var och en av markeringarna. Av denna anledning innefattar förfarandet enligt uppfinningen vidare stegen att för varje rasterpunkt och varje värde i en uppsättning rasterpunkter bestämma rasterpunktssanno- likheter att de till rasterpunkten associerade markering- lO l5 20 25 30 35 523 700 4 arna tillsammans definierar det värdet och att bestämma positionen på ytan utgående från rasterpunktssannolik- heterna och de motsvarande värdena. Rasterpunktssanno- likheterna, d v s sannolikheterna att rasterpunkten mot- svarar vart och ett av värdena, bestäms med fördel på basis av värdesannolikheterna för de till rasterpunkten associerade markeringarna. I och med beräknandet av rasterpunktssannolikheterna, kan alla markeringarna i den registrerade bilden tas i beaktande vid positionsbestäm- ningen och risken för att information förloras minimeras.
Företrädesvis väljs uppsättningen rasterpunkter ut från samtliga rasterpunkter i den registrerade bilden på basis av rasterpunktssannolikheterna för markeringarna i bilden, vilka rasterpunktssannolikheter beror på mot rasterpunkterna svarande värdesannolikheterna. Uppsätt- ningen utgörs företrädesvis av de rasterpunkter som ger mest information om positionen på ytan. Om en rasterpunkt har en enda associerad markering som har en stor värde- sannolikhet och små värdesannolikheter i övrigt, är det relativt säkert vilket värde rasterpunkten motsvarar.
Detta innebär att rasterpunkten kan bidra med mycket in- formation om positionen på ytan. Om en rasterpunkt däre- mot inte har någon associerad markering är dess värde- I detta fallet är det osäkert vilket värde rasterpunkten motsvaras av varvid raster- sannolikheter lika stora. punkten väsentligen inte kan bidra med någon information om positionen på ytan. Den uppsättning rasterpunkter som väljs ut från samtliga rasterpunkter i bilden är före- trädesvis sammanhängande.
Enligt en föredragen utföringsform väljs, för varje rasterpunkt i uppsättningen, ett av värdena ut att mot- svara var och en av rasterpunkterna, vilket val med för- del görs på basis av rasterpunktssannolikheterna vilka beror på de mot rasterpunkterna svarande värdesannolik- heterna. Enligt en utföringsform väljs det av värdena för varje rasterpunkt ut som har den största rasterpunkts- sannolikheten.
Zfiifilf-aiiz-...rlv G3: in* _:'=.š“a.1iïAr2.ïíensäiïaïlflïâ šß; íl~“j:.ïffßf,=fi-'f,'ï~-'fá fêif? ':' fflarnzzzz. Ikcïsf: 10 15 20 25 30 35 523 700 5 Positionskoder vilka används i samband med föreligg- ande uppfinning kan vanligen registreras ”från mer än ett håll". Detta betyder att det finns fler än en avläsnings- riktning för rastret. Resultatet från en positionsbestäm- ning är beroende av vilken avläsningsriktning som har använts. Av denna anledning innefattar förfarandet enligt föreliggande uppfinning med fördel steget att välja ett värde för varje rasterpunkt i uppsättningen för olika orienteringar av bilden, d v s för olika avläsningsrikt- ningar av positionskoden. Förfarandet innefattar före- trädesvis vidare steget att för varje orientering av bilden beräkna en vridningssannolikhet för uppsättningen utgående fràn värdesannolikheterna och att bestämma posi- tionen utgående från den orientering som ger störst vrid- ningssannolikhet. Detta steg gör att positionsbestäm- ningen inte störs av att anordningen vrids relativt ytan under positionsbestämningen.
Enligt en föredragen utföringsform väljs värdet för varje rasterpunkt i uppsättningen ut på basis av värde- sannolikheterna och med hänsyn till ett av positionskoden givet villkor för rasterpunkternas inbördes värden. Denna utföringsform möjliggör felkorrigering under användning av redundant information hos den registrerade bilden.
Villkoret anger lämpligen vilka kombinationer av värden som kan existera bland rasterpunkterna i bilden, d v s villkoret ges av hur den använda positionskoden är upp- byggd. Villkoret för existerande kombinationer kan vara givet på en global nivå, d v s sett över samtliga raster- punkter i bilden, eller på lokal nivå, d v s över någon ensemble av rasterpunkter i bilden, t ex kolumnvis och/- eller radvis. Sannolikhetsberäkningar används för att väga samman informationen i bilden, i motsvarighet till nämnda villkor, så att rasterpunkternas värden kan väljas på basis av sannolikhetsberäkningarna, villkoret. inom ramen för Företrädesvis är en positionskod som används i sam- band med föreliggande uppfinning baserad på en cyklisk l0 15 20 25 30 35 523 700 6 talserie i minst en riktning på ytan. Den cykliska tal- serien innehåller med fördel enbart inbördes unika tal- sekvenser med en förutbestämd längd, varvid varje tal i talsekvenserna kodas av åtminstone ett av nämnda värden.
Förfarandet innefattar företrädesvis vidare steget att, för en följd av markeringar, i åtminstone en riktning i bilden och utgående från värdesannolikheterna för de värden som kodar de i respektive talsekvens ingående talen, beräkna en sekvenssannolikhet för varje tal- sekvens. Sekvenssannolikheterna beräknas med fördel genom att de mot talsekvensen svarande värdesannolikheterna multipliceras men även andra beräkningssätt är möjliga.
Företrädesvis innefattar förfarandet vidare steget att bestämma positionen utgående från åtminstone en delmängd av de beräknade sekvenssannolikheterna.
I fallet att ett raster har identifierats i bilden och rasterpunktssannolikheter har beräknats, innefattar förfarandet med fördel istället steget att, för en följd av rasterpunkter, i åtminstone en riktning i bilden och utgående från rasterpunktssannolikheterna för de värden som kodar de i respektive talsekvens ingående talen, beräkna en sekvenssannolikhet för varje talsekvens. Detta görs företrädesvis enligt ovan, d v s genom att de mot talsekvensen svarande rasterpunktssannolikheterna multi- pliceras. Företrädesvis innefattar förfarandet vidare steget att bestämma positionen utgående från åtminstone en delmängd av de beräknade sekvenssannolikheterna.
Enligt en föredragen utföringsform kan positionen på ytan bestämmas på basis av den talsekvens som motsvaras av den största sekvenssannolikheten.
Företrädesvis görs ovanstående för ett flertal följ- der av markeringar eller rasterpunkter. Mest föredraget är att beräkna en sekvenssannolikhet för varje talsekvens för var och en av flertalet följder, att för varje följd välja ut den talsekvens som motsvaras av den största sekvenssannolikheten och att utifrån de utvalda tal- sekvenserna bestämma positionen. lO 15 20 25 30 35 523 700 7 Det ovan nämnda, av positionskoden givna, villkoret för rasterpunkternas inbördes värden ges av den cykliska talserien, vilken med fördel är sådan att ingen tal- sekvens av en given längd förekommer inverterad och bak- länges i den. Det ovan givna villkoret ges i det här fallet av talserien. En talserie enligt ovan innehåller ett färre antal talsekvenser än vad som är möjligt att definiera utgående från talsekvensernas längd. Den extra information som finns i talsekvensera används för att öka säkerheten att rätt position bestäms. En enskild marke- rings värde blir inte lika betydelsefull med de ovan beskrivna talsekvenserna eftersom den enskilda marke- ringens värde måste stämma överens med de övriga värdena i den av talsekvenserna som ger högst sekvenssannolikhet.
Det är inte nödvändigt att de följder av markeringar eller rasterpunkter som används bildar en matris.
Förfarandet enligt uppfinningen innefattar enligt en utföringsform steget att identifiera markeringar vilkas värdesannolikheter definieras av deras storlek i för- hållande till ett antal idealstorlekar. ingsform beräknas värdesannolikheterna enligt formeln Enligt en utför- exp(-(Ri-r)2/v) där Ri är idealstorlekar för en markering, t ex idealareor eller alternativt idealradier, vilka idealstorlekar motsvarar värdesannolikheten l för ett enda värde och O för övriga värde. Vidare anger r stor- leken, t ex arean eller alternativt radien, för en marke- ring och v är en konstant, t ex variansen, under antagan- det att markeringarnas storlek är normalfördelad.
Enligt en annan föredragen utföringsform identi- fieras markeringar vilkas värdesannolikheter definieras av deras läge i förhållande till rastret och mest före- draget är det markeringarnas avstånd till var och en av ett antal ideala placeringar som definierar deras värde- sannolikheter. De ideala placeringarna för en markering kan enligt en utföringsform vara på var och en av de rasterlinjer som utgår från den rasterpunkt till vilken markeringen är associerad, på lika avstånd från raster- 10 15 20 25 30 35 523 700 8 punkten. Om rastret är ett rutnät innebär denna utför- ingsform fyra stycken ideala placeringar för en marke- ring. Enligt en utföringsform beräknas värdesannolik- heterna som exp(-(dflz/v) där di är avstànden från en markering till de ideala placeringarna för den och v är en konstant, t ex variansen, under antagandet att marke- ringarnas avstånd till de ideala placeringarna är normal- fördelad. I detta fallet motsvarar de ideala placering- arna värdesannolikheten 1 för ett enda värde och O för övriga värden.
Enligt ytterligare en utföringsform kan markering- arnas värdesannolikheter definieras av deras form så att ett antal idealformer motsvarar värdesannolikheten l för ett antal värden och 0 för övriga värden.
För uppsättningen rasterpunkter, omvandlas före- trädesvis varje värde till ett talpar med ett första och ett andra tal, vilket talpar har den till värdet tillhör- ande rasterpunktssannolikheten, vilka tal med fördel antingen är ”O” eller "l". I och med detta steg har nu en binär representation av uppsättningen rasterpunkter er- hållits.
När varje värde har omvandlats till ett talpar, används företrädesvis rasterpunktssannolikheterna för var och en av rasterpunkterna i uppsättningen för att kon- struera en första och en andra matris. Nämnda första och andra matris, vilka svarar mot det första respektive det andra talet, har på varje plats en nollsannolikhet som svarar mot att det första talet respektive det andra talet är en nolla samt en ettsannolikhet svarande mot att det första talet respektive det andra talet är en etta.
Som exempel kan nollsannolikheterna för den första matri- sen beräknas genom att de rasterpunktssannolikheter som svarar mot att det första talet är en nolla adderas och ettsannolikheterna för den första matrisen beräknas genom att de rasterpunktssannolikheter som svarar mot att det första talet är en etta adderas. På motsvarande sätt kan sedan nollsannolikheterna och ettsannolikheterna för den lO 15 20 25 30 35 523 700 9 andra matrisen beräknas utifrån rasterpunktssannolik- heterna för det andra talet.
Företrädesvis väljs uppsättningen rasterpunkter ut från samtliga rasterpunkter för den registrerade bilden genom att en kombinerad entropi för rasterpunkterna mini- meras. Entropin för en rasterpunkt beror på rasterpunkts- sannolikheterna. Entropin är maximal då rasterpunkts- sannolikheterna för rasterpunkten är lika stora och den är minimal då alla utom en av rasterpunktssannolikheterna är noll. Om en rasterpunkt inte har någon associerad markering är värdesannolikheterna och därmed raster- punktssannolikheterna lika stora, varvid rasterpunktens entropibidrag blir maximalt. Om en rasterpunkt däremot har en associerad markering som har en stor värdesanno- likhet och små värdesannolikheter i övrigt, är en av rasterpunktssannolikheterna stor och övriga små varvid rasterpunktens entropibidrag blir litet.
Uppfinningen avser enligt en andra aspekt en anord- ning för positionsbestämning. Anordningen enligt före- liggande uppfinning innefattar en sensor för registrering av en bild av en positionskod på en yta och behandlings- organ för bestämning av en position på ytan utgående från den registrerade bilden, vilken bestämning sker medelst sannolikhetsberäkningar. Anordningen utmärkes av att den vidare är anordnad att i bilden identifiera markeringar att för var och en av markeringarna och för vart och ett av vilka var och en definierar ett antal möjliga värden, värdena beräkna en värdesannolikhet att markeringen definierar detta värde och att utifrån värdesannolikhet- erna och de motsvarande värdena bestämma positionen på ytan.
Uppfinningen avser enligt en tredje aspekt ett minnesmedium på vilket det finns lagrat ett datorprogram för positionsbestämning, medelst sannolikhetsberäkningar, utgående från en digital bild.
De ovanstående aspekterna diskuteras vidare nedan tillsammans med en användning av sannolikhetsberäkningar 10 15 20 25 30 35 523 700 10 vid bestämning av en position utgående från en bild av en positionskod.
Förfarandet kan implementeras som ett datorprogram vilket lagras i anordningens minne och exekveras i processorn eller i en extern anordning. Alternativt kan förfarandet helt eller delvis implementeras i form av en produktanpassad krets, såsom en ASIC, eller i form av digitala eller analoga kretsar eller i någon lämplig kombination av dessa.
Särdragen som diskuterades i samband med förfarandet ovan är naturligtvis överförbara till anordningen och minnesmediet enligt uppfinningen.
Ovanstående särdrag är naturligtvis kombinerbara i samma utföringsform.
Kort beskrivning av ritningarna Föreliggande uppfinning skall nu beskrivas mera i detalj genom utföringsexempel under hänvisning till bifogade ritningar.
Fig l visar en anordning som kan användas för posi- tionsbestämning.
Fig 2 visar en typ av positionskod som kan användas i samband med föreliggande uppfinnig.
Fig 3 visar fyra ideala placeringar för en marke- ring.
Fig 4 visar hur markeringarnas värdesannolikheter beräknas.
Fig 5 visar hur rasterpunktssannolikheter beräknas ur värdesannolikheter.
Fig 6 illustrerar hur en första och en andra matris konstrueras.
Fig 7 visar hur en sekvenssannolikhet för en kolumn beräknas.
Fig 8 visar en cyklisk talserie för avkodning av sekvenser.
Fig 9 illustrerar steg i beräkningen av positions~ koordinater. 10 15 20 25 30 35 Wszs 700 ll Fig 10 visar en annan typ av positionskod som kan användas i samband med föreliggande uppfinning.
Fig 11 visar ytterligare två Qxempel på positions- koder som kan användas i samband med föreliggande upp- finning.
Detaljerad beskrivning av uppfinningen Fig 1 visar en anordning 1 för positionsbestämning enligt en föredragen utföringsform av föreliggande upp- Den innefattar ett hölje 2, finning. som är format unge- fär som en penna. I höljets kortända finns en öppning 3.
Kortänden är avsedd att ligga an mot eller hållas på litet avstånd från den yta 4 på vilken positionsbestäm- ningen skall ske.
Anordningen 1 innefattar minst en lysdiod 5 för be- lysning av den yta 4 som skall avbildas och en ljuskäns- lig areasensor 6, exempelvis en CCD- eller CMOS-sensor, för registrering av en tvådimensionell bild. Eventuellt kan anordningen l dessutom innehålla ett linssystem 7.
Strömförsörjningen till anordningen 1 erhålls från ett batteri 8 som är monterat i ett separat fack i höljet 2; Anordningen 1 innefattar vidare bildbehandlings- organ 9 för bestämning av en position på basis av den med sensorn 6 registrerade bilden och närmare bestämt en pro- cessorenhet 10 som är programmerad att läsa in bilder från sensorn 6 och utföra positionsbestämning på basis av dessa bilder.
Anordningen 1 innefattar också i denna utförings- form en pennspets 11, med vars hjälp man kan skriva vanlig färgämnesbaserad skrift på ytan 4 på vilken posi- tionsbestämningen skall ske. Pennspetsen ll kan vara in- och utfällbar så att användaren kan styra om den skall användas eller ej. I vissa tillämpningar behöver anord- ningen inte ha någon pennspets alls.
Anordningen 1 kan vidare innefatta knappar 12 med vars hjälp anordningen aktiveras och styrs. Den kan även innefatta en sändtagare 13 för trådlös överföring, t ex 10 15 20 25 30 35 523 700 12 med IR-ljus eller radiovågor, av information till och från anordningen och en display 14 för visning av posi- tioner eller registrerad information.
Fig 2a visar ett papper 15 som har en yta 16 som är försedd med en optiskt avläsningsbar positionskod 17 bestående av markeringar 18, vilken positionskod för åskådlighetens skull är kraftigt förstorad. Fig 2b visar en ytterligare förstorad del 19 av positionskoden 17 i fig 2a. Anordningen är anordnad att registrera en bild av positionskoden, att identifiera markeringar 18 i bilden och att för bilden anpassa ett raster 20 med rasterlinjer 21 vilka skär varandra i rasterpunkter 22. Anpassningen görs så att var och en av markeringarna 18 associeras med en rasterpunkt 22. Exempelvis är punkten 23 associerad med rasterpunkten 24.
Markeringarnas 18 värde definieras av deras för- skjutning i förhållande till de rasterpunkter 22 till vilka de är associerade. I denna utföringsform finns det för varje markering fyra ideala placeringar som var och en motsvarar värdesannolikheten 1 för ett enda värde.
Dessa placeringar är på var och en av de fyra raster- linjerna 21 som utgår fràn den rasterpunkt 22 till vilken markeringen är associerad, vilka placeringar är belägna på lika avstånd från rasterpunkten. Idealplaceringarna 25 för en markering visas i förstoring i fig 3a-d. fig 3a värdet "O”, i fig 3b värdet ”1", ”2” och i fig 3d värdet ”3”. representera fyra olika värden ”O-3”.
De har i i fig 3c värdet Varje markering kan alltså Av olika anledningar har de identifierade markering- arna oftast inte en idealplacering. I många fall kan det därför vara svårt att entydigt bestämma ett värde för en markering. På grund av detta är anordningen anordnad att, för varje markering och för varje värde ”O-3", beräkna en värdesannolikhet att markeringen har detta värde. Värde- sannolikheterna för varje markering är en avtagande funk- tion av avstànden 26 från markeringen 27 till var och en av dess idealplaceringar 25, se fig 4. Enligt en före- 10 l5 20 25 30 35 523 700 13 dragen utföringsform antas markeringarna vara normal- fördelade kring idealplaceringarna vilket innebär att värdesannolikheterna, PV kan beräknas genom formeln Pv= k exp(-(dflz/v), där k= en konstant, di= avståndet från en markering till en idealplacering och v= variansen.
För varje markering kan alltså fyra stycken värde- sannolikheter beräknas. Ibland inträffar det att en markering hamnar mitt i en rasterpunkt. I de fallen kommer de fyra värdesannolikheterna för markeringen att vara lika eftersom avstånden från markeringen till var Fallet att det inte finns någon markering associerad med en raster- och en av idealplaceringarna är lika stora. punkt behandlas som om det fanns en markering mitt i rasterpunkten d v s värdesannolikheterna blir lika stora.
Om det finns fler än en, t ex 3, så finns det 3x4 stycken associerade marke- ringar till en rasterpunkt, värdesannolikheter för rasterpunkten. Anordningen är där- för anordnad att för varje rasterpunkt och för varje vär- de bestämma rasterpunktssannolikheter att de till raster- punkten associerade markeringarna tillsammans definierar detta värde. Rasterpunktssannolikheterna bestäms i denna utföringsform genom att den största värdesannolikheten bland de associerade markeringarna väljs ut för varje värde. Alternativt kan rasterpunktssannolikheterna vara viktade summor av värdesannolikheterna för värdena för de associerade markeringarna.
Beräkning av rasterpunktssannolikheterna i denna utföringsform illustreras medelst sifferexemplet i fig 5.
I fig 5a visas en rasterpunkt 22 med tvâ associerade markeringar 28 och 29. Tabellerna 30 och 31 i fig 5b innehåller värdesannolikheterna P1 för respektive marke- ring. Tabellen 32 i fig 5c innehåller de resulterande rasterpunktssannolikheterna P2 för rasterpunkten 22.
Rasterpunktssannolikheterna är i detta exempel relativa.
Alternativt kan de istället vara normerade på lämpligt sätt. Om det bara finns en associerad markering till en 10 15 20 25 30 35 523 700 14 rasterpunkt är rasterpunktssannolikheterna uppenbarligen lika med värdesannolikheterna.
Vid registreringen av en bild påverkar anordningens avstånd till ytan hur stor del av positionskoden som registreras och därmed också hur pass stort raster som kan anpassas till bilden. För omvandling av bilden till en position används de markeringar som är associerade med 8x8 av de anpassade rasterpunkterna. Om fler än 8x8 rasterpunkter har anpassats till bilden, identifieras alltså ett överskott av markeringar. Anordningen är där- för vidare anordnad att ur samtliga anpassade raster- punkter välja ut den uppsättning rasterpunkter som ger mest information om positionen på ytan, vilken uppsätt- ning enligt en föredragen utföringsform är sammanhängande För detta ändamål beräknas entropin för var och en av samtliga anpassade rasterpunkter. Därefter väljs de 8x8 rasterpunkter ut som ger den minsta entropisumman. Entro- pin för en rasterpunkt beräknas enligt nedanstående formel om rasterpunktssannolikheterna är normerade så att 22-1 Hfizfëllflï) där Pi är rasterpunktssannolikheten för värdet i och där ln är den naturliga logaritmen. Entropin för en raster- punkt blir alltså maximal då rasterpunktssannolikheterna är lika stora och minimal då alla utom en av raster- punktssannolikheterna är noll. Ett alternativ till att välja ut 8x8 rasterpunkter med hjälp av entropiberäk- ningar är att istället använda den största rasterpunkts- sannolikheten för varje rasterpunkt som ett informations- värde och välja ut de sammanhängande 8x8 rasterpunkter som ger störst summa av informationsvärdena.
I positionskoden används de fyra olika värdena ”O-3” för att koda en binär bit i var och en av två riktningar.
Anordningen är således anordnad att för var och en av de 8x8 rasterpunkterna omvandla värdena till de fyra olika 10 15 20 25 30 35 523 700 15 bitkombinationerna (O, 1), (O, 0), (1, O) och (1, 1) vilka bitkombinationer har de till värdena tillhörande rasterpunktssannolikheterna, se fortsättningen på det tidigare sifferexemplet i tabellen 33 i fig 6a. I bit- kombinationerna hänför sig det första talet till en första riktning och det andra talet till en andra rikt- ning.
Anordningen är anordnad att för de 8x8 rasterpunkt- erna separera rasterpunktssannolikheterna i nollsannolik- heter och ettsannolikheter. I denna utföringsform görs detta för var och en av rasterpunkterna genom att de rasterpunktssannolikheter som svarar mot att det första talet är en nolla jämförs, varvid den största raster- punktssannolikheten väljs till nollsannolikhet vilken sparas i en första matris 34. Sedan jämförs de raster- punktssannolikheter som svarar mot att det första talet är en etta, varvid den största rasterpunktssannolikheten väljs till ettsannolikhet vilken sparas i den första matrisen 34. Därefter upprepas den ovanstående proceduren för det andra talet och för en andra matris 35. Resulta- tet illustreras genom fortsättningen på sifferexemplet i fig 6b. Enligt andra utföringsformer kan en första och en andra matris med noll- och ettsannolikheter för de 8x8 rasterpunkterna skapas genom att rasterpunktssannolikhet- er som svarar mot att det första talet är en nolla adderas varvid summan lagras som nollsannolikhet och att de rasterpunktssannolikheter som svarar mot att det första talet är en etta adderas varvid summan lagras som en sannolikhet, varvid ovanstående procedur upprepas för det andra talet.
De 8x8 rasterpunkterna motsvaras alltså nu av två stycken matriser 34 och 35 med 8x8 element vardera. Vart och ett av elementen innehåller en nollsannolikhet och en ettsannolikhet svarande mot en nolla respektive en etta.
Med hjälp av dessa första och andra matriser kan en första koordinat respektive en andra koordinat för posi- tionen bestämmas. lO 15 20 25 30 35 -523 700 16 Anordningen är anordnad att för den första matrisen bestämma olika binära sekvenser av storleken åtta med hjälp av en första cyklisk talserie. Den första cykliska talserien är binär, d v s den utgörs av en följd av nollor och ettor, och den innehåller enbart inbördes unika talsekvenser av en given längd. Alla möjliga olika binära sekvenser av storleken åtta finns inte represen- terade i den första cykliska talserien. Orsaken till detta är att om positionskoden vore helt perfekt, skulle det endast erfordras 6x6 markeringar, d v s 6x6 raster- punktssannolikheter för 6x6 rasterpunkter, för bestämning av en position. Det finns 26 olika binära kombinationer, d v s 64 stycken, om talsekvenser av längden 6 används.
En cyklisk talserie innehållande 64 stycken unika tal- sekvenser skulle följaktligen täcka in alla möjliga fall för sekvenser av längden 6. Ett villkor på en cyklisk talserie för avkodning enligt uppfinningen är emellertid att en talsekvens av en given längd inte får förekomma inverterad eller baklänges i talserien vilket leder till den cykliska talserien innehållande 63 talsekvenser för avkodning av sekvenser av storleken 8. Genom att vid avkodningen använda en längre sekvens än den minsta möjliga erhålls ett överskott av nollsannolikheter och ettsannolikheter vilket ger utrymme för felkorrigering.
Anordningen är anordnad att för var och en av kolum- nerna i den första matrisen jämföra var och en av de 63 olika talsekvenserna med motsvarande binära sekvens i den första matrisen. För varje talsekvens i den första cyk- liska talserien är anordningen vidare anordnad att be- räkna en första sekvenssannolikhet för motsvarande binära sekvens genom att multiplicera de rasterpunktssannolik- heter som motsvaras av sekvensen. Efter denna operation kommer det således att finnas 63 stycken första sekvens- sannolikheter med var sitt tillhörande unikt sekvensvärde för varje kolumn i den första matrisen, vilka sekvens- värden definieras av de motsvarande sekvensernas positioner i den första cykliska talserien. Anordningen 5 u l* I I i. 'l [I 1 1 10 15 20 25 30 35 523 700 17 är anordnad att för varje kolumn välja ut den största första sekvenssannolikheten och det motsvarande sekvens- värdet och spara dessa. Vid avkodningen används således redundant information för att uppnå felkorrigerings- egenskaper. I ovan beskrivna exempel används 8x8 raster- punkter vid avkodningen, trots att positionsinformationen kan extraheras utgående från 6x6 rasterpunkter, d v s bilden innehåller 56 bitar redundant information [(82- 62)x2]. i detta fall kolumnvis, informationen i den aktuella bilden mot de olika tal- sekvenserna som kan förekomma hos positionskoden, Vid avkodningen matchas, under användning av rasterpunktssannolikheterna tillhörande den aktuella bilden. Kombinationen av redundant information, sannolikheter och ett känt villkor för rasterpunkternas inbördes värden ger en god okänslighet för störningar i den aktuella bilden. Värdet av varje enskild markering minskar därmed i betydelse, eftersom den enskilda marke- ringens värde måste stämma överens med de övriga värdena i den av talsekvenserna som ger högst sekvenssannolikhet.
Alternativt, begränsat, om behovet av felkorrigering är mer kan anordningen vara anordnad att för var och en av kolumnerna i den första matrisen direkt välja ut en binär sekvens, och därmed ett sekvensvärde, svarande mot den största av noll- och ettsannolikheten på varje plats.
I fig 7 visas ett exempel på en binär sekvens 36, ett exempel på en kolumn 37 i en första matris och hur den mot sekvensen svarande första sekvenssannolikheten 38 beräknas.
I fig 8 visas ett exempel på en första cyklisk tal- serie 39 för avkodning av sekvensen 36.
En anordning enligt föreliggande uppfinning är vrid- bar i olika lägen i förhållande till en yta. Eftersom det finns fyra stycken möjliga avläsningsriktningar för rast- ret, vilka avläsningsriktningar visas som pilar 40 i fig 9, kan positionskoden avläsas på fyra olika sätt. Av denna anledning är anordningen anordnad att för vart och ett av rastrets avläsningsriktningar, på ovanstående 10 15 20 25 30 35 523 700 18 sätt, bestämma den största första sekvenssannolikheten för varje kolumn och beräkna en första vridningssannolik- het för vart och ett av vridningslägena genom att multi- plicera de största första sekvenssannolikheterna för varje kolumn. Den binära matrisen 42 innehåller exempel på kolumner med sekvenser 43, som kan motsvara sekvens- värdena, Den binära matri- Sxl-Sxg för 8x8 rasterpunkter. sen 42 alstras inte i realiteten utan den visas bara i syfte att tydligare åskådliggöra förfarandet.
Anordningen är vidare anordnad att, på motsvarande sätt för var och en av raderna i den andra matrisen, jäm- föra var och en av de 63 olika talsekvenserna med mot- svarande binära sekvens i den andra matrisen. För varje talsekvens i en andra cyklisk talserie, vilken har samma egenskaper som den första cykliska talserien, är anord- ningen vidare anordnad att beräkna en andra sekvenssanno- likhet för motsvarande binära sekvens genom att multi- plicera de rasterpunktssannolikheter som motsvaras av sekvensen. Efter denna operation kommer det således att finnas 63 stycken andra sekvenssannolikheter med var sitt tillhörande unikt sekvensvärde för varje rad i den andra matrisen, vilka sekvensvärde definieras av de motsvarande sekvensernas positioner i den andra cykliska talserien, Även här kan anordningen alternativt vara anordnad att för var och en av raderna i den andra matrisen direkt välja ut en binär sekvens, och därmed ett sekvensvärde, svarande mot den största av noll- och ettsannolikheten på varje plats.
Anordningen är vidare anordnad att för vart och ett av rastrets avläsningsriktningar, på ovanstående sätt, bestämma den största andra sekvenssannolikheten för varje rad och beräkna en andra vridningssannolikhet för vart och ett av vridningslägena genom att multiplicera de största andra sekvenssannolikheterna för varje rad. Den binära matrisen 45 innehåller exempel på rader med sekvenser 46, som kan motsvara sekvensvärdena, Syl-Sya för 8x8 rasterpunkter. Inte heller den binära matrisen 45 (p :W 10 l5 20 25 30 35 523 700 19 alstras i realiteten utan visas bara i syfte att tydliga- re åskådliggöra förfarandet.
Anordningen är därefter anordnad att för varje vrid- ningsläge beräkna en total vridningssannolikhet genom att multiplicera den första och den andra vridningssannolik- het som svarar mot vridningsläget. Anordningen är vidare anordnad att för positionsbestämningen välja ut de sekvensvärden Sxl-Sxg, Syl-Sya som motsvaras av det vrid- ningsläge som har den största totala vridningssannolik- heten.
Anordningen är vidare anordnad att för de utvalda sekvensvärdena beräkna differensen mellan intilliggande sekvensvärden vilket ger upphov till två uppsättningar, 47 och 48, med sju differensvärden Dxl-Dx7 och Dyl-Dy7.
Dessa differensvärden används därefter för att alstra en första koordinat och en andra koordinat.
För beräkningen av den första koordinaten behövs enligt denna utföringsform emellertid endast sex av sekvensvärdena Sxl-Sxg, d v s fem av differensvärdena Dxl- Dxv. Enligt en utföringsform används sekvensvärdena Sxz- SX7 och således differensvärdena Dxz-DX6. Samma sak gäller för den andra koordinaten som då beräknas utifrån sek- vensvärdena Syg-Syq och således differensvärdena Dy;-Dyß Alternativt bestäms endast 6 sekvensvärden för varje riktning, Sxg-SX7 respektive Sy;-Syy.
Omvandlingen från differensvärden till koordinater kan göras på många olika sätt t ex på det sätt som finns beskrivet i sökandens ansökan WO Ol/26033 vilken härmed införlivas häri genom denna hänvisning.
Fig 10 visar ett papper 49 som har en yta 50 som är försedd med en alternativ positionskod 51 vilken består av markeringar 52 och vilken för åskádlighetens skull är kraftigt förstorad. Enligt denna utföringsformen defini- eras markeringarnas 52 värde av deras storlek. Denna typ av positionskod beskrivs i patentpublikationen WO OO/79383 vilken införlivas häri genom denna hänvis- ning.
I ' fifiz-“pi 1.52: fsí' u: ï. I l' jf ”;;-~ .f fIzï~f='-' _f.,:'-lï“»,.".2= ' ' ' 10 15 20 25 30 35 523 700 20 Anordningen är i detta fallet precis som ovan anord- nad att registrera en bild av positionskoden, att identi- fiera markeringar i bilden och att för bilden anpassa ett raster så att var och en av markeringarna associeras med en rasterpunkt. I denna utföringsformen finns det två möjliga värden för varje markering. Den lilla markeringen 53 motsvarar en nolla och den stora markeringen 54 mot- svarar en etta och det finns en idealstorlek på marke- ringarna som entydigt definierar deras värde.
De identifierade markeringarna är oftast inte av idealstorlek. I många fall kan det därför vara svårt att entydigt bestämma ett värde för varje markering 52.
Anordningen är därför som ovan anordnad att, för varje markering och för varje värde ”O” och ”l”, beräkna en värdesannolikhet att markeringen har detta värde. Enligt en föredragen utföringsform antas markeringarnas 52 stor- lek vara normalfördelade kring idealstorlekarna vilket innebär att värdesannolikheterna, PV kan beräknas genom formeln Pv= k exp(-(Ri-r)2/v)), där k= en konstant, R¿= idealstorlek, r= storlek för en markering och v= vari- ansen.
För varje markering kan alltså två stycken värde- sannolikheter beräknas. Fallet att det inte finns någon markering associerad med en rasterpunkt behandlas som om det fanns två markeringar av idealstorlek, en med värdet ”O” och en med värdet ”l”, associerade med rasterpunkten, varvid värdesannolikheterna blir lika stora.
Om det finns fler än en associerad markering, t ex 3, till en rasterpunkt, så finns det 3x2 stycken värde- sannolikheter för rasterpunkten. Anordningen är därför som ovan anordnad att för varje rasterpunkt och för varje värde bestämma rasterpunktssannolikheter att de till rasterpunkten associerade markeringarna tillsammans definierar detta värde. Rasterpunktssannolikheterna kan liksom tidigare bestämmas genom att den största värde- sannolikheten bland de associerade markeringarna väljs ut för varje värde. Alternativt kan rasterpunktssannolikhet- 10 15 20 25 30 35 523 700 21 erna vara viktade summor av värdesannolikheterna för värdena för de associerade markeringarna. Även i denna utföringsform gäller att rasterpunkts- sannolikheterna är lika med värdesannolikheterna om det bara finns en associerad markering till en rasterpunkt.
Ovan har sannolikheter vid flera olika tillfällen multiplicerats för erhållande av olika resultat. Det kan påpekas att i fall där sannolikheterna som skall multi- pliceras beskrivs av exponentialfunktioner kan logarit- mering användas så att resultaten istället erhålls genom summering av exponenter enligt nedanstående formel. ln(exp(a%exp(b))=ln(exp(a))+ln(exp(b))=a+b Fig lla och b visar ytterligare två typer av koder som kan användas i samband med föreliggande uppfinning.
Koden 55 i fig lla består av markeringar 56 i form av små streck. Markeringarnas 56 värden beror på snedställningen av strecken. Markeringen 57 motsvarar värdet ”O” och markeringen 58 motsvarar värdet ”1”. Denna typ av kod beskrivs i ansökan US-A-5 245 165 vilken införlivas häri genom denna hänvisning. Koden 59 i fig llb består av ett rutnät 60, varvid trianglar 61 är placerade i rutorna.
Rutan 62 har värdet ”O” och rutan 63 har värdet ”l”. Ännu en kod som är användbar i samband med före- liggande uppfinning utgörs av markeringar vilka har två olika idealformer, en första och en andra idealform, var- vid markeringarnas densitet på en yta ger information om positionen. I denna utföringsform varieras densiteten i två dimensioner varvid densiteten av markeringar med en första idealform varierar i en första dimension och markeringar med en andra idealform varierar i en andra dimension.
Det finns ett flertal andra koder som är användbara i samband med föreliggande uppfinning, de ovan beskrivna utföringsformerna skall endast ses som exempel. 10 15 20 25 30 35 l523 700 22 När en bild av en positionskod har registreras iden- tifieras markeringarna genom att de mörka sammanhängande områden i bilden letas upp. Det är emellertid så att de mörka sammanhängande områdena i bilden inte behöver vara en markering i positionskoden. Ibland finns brusparti- klar, t ex i form av smuts pá ytan på vilken positions- koden är tryckt. Dessa bruspartiklar kan då av misstag I den första utföringsformen där markeringarnas värden bestäms baserat på deras avstånd till idealplaceringarna finns det emellertid en faktor som talar mot eventuella brus- identifieras som markeringar i positionskoden. partiklars inverkan på resultatet från positionsbestäm- ningen. Om en god anpassning av ett raster har gjorts för den registrerade bilden, kommer "brusmarkeringarna” att vara belägna på större avstånd från de ideala place- ringarna än positionskodens markeringar. I den andra utföringsformen finns det en annan faktor som talar mot bruspartiklarnas, eller egentligen smutspartiklarnas, inverkan på resultatet. Smutspartiklarna är oftast mycket mindre än positionskodens markeringar. Vid bestämningen av de rasterpunktssannolikheterna utifrån värdesannolik- heterna kommer deras värden därmed att kasseras eftersom värdesannolikheterna för smutspartiklar är mindre än de för positionskodens markeringar.
En fackman inom området inser att ovanstående utför- ingsformer kan varieras på ett antal sätt utan att upp- finningstanken frångås.
Det finns två olika parametrar för markeringarna i de positionskoder som har diskuterats i denna ansökan nämligen markeringarnas läge samt deras form/storlek.
Beroende på vilken positionskod som avses så anger en av parametrarna markeringarnas värde. Den parameter som blir över kan då lämpligen användas för att beräkna en sanno- likhet för att den identifierade markeringen är en marke- ring i positionskoden.
I fallet med positionskoden i vilken markeringarnas värde definieras av deras läge i förhållande till ett 10 15 20 523 700 23 raster, kan t ex markeringarnas area ange sannolikheten att markeringen är en markering i positionskoden. Värde- sannolikheterna för varje markering kan sedan multipli- ceras med sannolikheten att markeringen är en markering i positionskoden innan rasterpunktssannolikheterna beräk- nas. Ett alternativ till denna metod är att en form av areafilter används i anordningen för att helt sortera Detta filter fungerar på så sätt att alla markeringar som har en area bort brusmarkeringarna i ett tidigt skede. som ligger mellan två gränsvärden identifieras som marke- ringar i positionskoden medan alla markeringar utanför gränsvärdena förkastas.
I fallet med positionskoden i vilken markeringarnas värde definieras av sin form/storlek, kan t ex markering- arnas läge i förhållande till ett raster istället ange sannolikheten att markeringen är en markering i posi- tionskoden.
Anordningen och förfarandet enligt föreliggande upp- finning är inte begränsad till användning i samband med kodning av positioner utan kan även användas i andra sammanhang t ex vid lagring av data enligt PCT/SEOl/00596 vilken ansökan införlivas häri genom denna hänvisning.

Claims (21)

10 15 20 25 30 35 =523 700 24 PATENTKRAV
1. l. Förfarande för positionsbestämning, vilket inne- fattar stegen att registrera en bild av en positionskod (l7, 51, 55, 59) på en yta (4, l6, 50) en position på ytan utgående från den registrerade bilden, k ä n n e t e c k n a t av stegen att i bilden identifiera markeringar (18, 27, 52, 56) och att bestämma vilka definierar ett antal möjliga värden, att för var och en av marke- ringarna och för vart och ett av värdena beräkna en värdesannolikhet att markeringen definierar detta värde och att utifrån värdesannolikheterna och de motsvarande värdena bestämma positionen på ytan.
2. Förfarande enligt krav l, vilket även innefattar (20) och asso- (l8, 27, 52, 56) (22) vilken utgörs av en korsning i rastret, stegen att i bilden identifiera ett raster ciera var och en av markeringarna med en rasterpunkt att för varje rasterpunkt och varje värde i en uppsätt- ning rasterpunkter bestämma rasterpunktssannolikheter att rasterpunkten motsvarar det värdet på basis av värde- sannolikheterna och att bestämma positionen utgående från rasterpunktssannolikheterna och de motsvarande värdena.
3. Förfarande enligt krav 2, varvid uppsättningen väljs ut på basis av värdesannolikheterna.
4. Förfarande enligt krav 2 eller 3, (22) varvid ett värde väljs ut för varje rasterpunkt i uppsättningen på basis av värdesannolikheterna.
5. Förfarande enligt krav 4, varvid steget att välja (22) varje rasterpunkt välja det värde som har störst värde- sannolikhet. ett värde per rasterpunkt innefattar steget att för
6. Förfarande enligt krav 4, varvid steget att välja ett värde för varje rasterpunkt (22) i uppsättningen görs för olika orienteringar av bilden, vilket förfarande även innefattar stegen att för varje orientering beräkna en vridningssannolikhet för uppsättningen utgående från 10 15 20 25 30 35 523 700 25 värdesannolikheterna och att bestämma positionen utgående från den orientering som ger störst vridningssannolikhet.
7. Förfarande enligt krav 4 eller 6 varvid värdet (22) i uppsättningen väljs på basis av värdesannolikheterna och med hänsyn till ett av posi- för varje rasterpunkt tionskoden givet villkor för rasterpunkternas inbördes värden.
8. Förfarande enligt något av föregående krav, (17) baserad på en cyklisk talserie varvid positionskoden i minst en riktning på ytan är (39) (36) längd, varvid varje tal i talsekvenserna kodas av åtmin- innehållande enbart inbördes unika talsekvenser med en förutbestämd stone ett av värdena, varvid förfarandet innefattar stegen att, för en följd av markeringar, i åtminstone en riktning i bilden och utgående från värdesannolikheterna för de värden som kodar de i respektive talsekvens in- gående talen, (38) varje talsekvens och att bestämma positionen utgående beräkna en sekvenssannolikhet för från sekvenssannolikheterna och åtminstone en delmängd av följden av markeringar.
9. Förfarande enligt något av krav 2-7, varvid (17) baserad på en cyklisk talserie positionskoden i minst en riktning på ytan är (39) (36) längd, varvid varje tal i talsekvenserna kodas av åtmin- stone ett av värdena, innehållande enbart inbördes unika talsekvenser med en förutbestämd varvid förfarandet innefattar stegen att, för en följd av rasterpunkter, i åtminstone en riktning i bilden och utgående från rasterpunktssanno- likheterna för de värden som kodar de i respektive tal- sekvens ingående talen, (38) utgående från sekvenssannolikheterna och åtminstone en beräkna en sekvenssannolikhet för varje talsekvens och att bestämma positionen delmängd av följden av rasterpunkter. lO. Förfarande enligt krav 8 eller 9, varvid positionen bestäms på basis av den talsekvens som ger störst sekvenssannolikhet.
10. 15 20 25 30 35 523 700 26
11. Förfarande enligt krav 8, (39) talsekvens förekommer inverterad och baklänges i tal- 9 eller 10, är sådana att ingen varvid talsekvenserna och talserien serien.
12. Förfarande enligt något av ovanstående krav, vilket innefattar steget att identifiera markeringar (52) vilkas värdesannolikheter definieras av deras storlek i förhållande till ett antal idealstorlekar för marke- ringarna.
13. Förfarande enligt patentkrav 12, (52) och en av idealstorlekarna Ri som exp(-(Ri-r)2/v), där r varvid värde- sannolikheterna för varje markering beräknas för var är markeringens storlek och v är en konstant.
14. Förfarande enligt krav 2-7, vilket innefattar (18) sannolikheter definieras av deras läge i förhållande till (22)
15. Förfarande enligt krav 2-7, steget att identifiera markeringar vilkas värde- de rasterpunkter till vilka de är associerade. vilket innefattar identifiering av markeringar (18) vilkas värdesanno- (26) en på var och en av (22) likheter definieras av deras avstånd (25), som utgår från den rasterpunkt till var och en av ett antal ideala placeringar (21) till vilken de är associerade. rasterlinjerna
16. Förfarande enligt patentkrav 15, varvid värde- (18) exp(-(dflz/v) där di är markeringens avstånd (26) till (25)
17. Förfarande enligt något av patentkraven 2-7, 9, 14, 15 eller 16, vilket innefattar steget att för upp- sannolikheterna för varje markering beräknas som idealplaceringen och v är en konstant. sättningen rasterpunkter omvandla varje värde till ett talpar med ett första tal och ett andra tal, vilket talpar har den till värdet tillhörande rasterpunktssanno- likheten, vilka första och andra tal företrädesvis är antingen en nolla eller en etta.
18. Förfarande enligt krav 17, vilket innefattar (22), på basis av de till talparen tillhörande rasterpunktssanno- stegen att, för uppsättningen rasterpunkter 10 15 20 25 30 35 523 700 27 likheterna, konstruera en första (34) och en andra matris (35) svarande mot det första respektive det andra talet, vilka matriser på varje plats har en nollsannolikhet svarande mot att det första respektive det andra talet är en nolla samt en ettsannolikhet svarande mot att det första respektive det andra talet är en etta.
19. Förfarande enligt något av krav 2-7, 17 eller 18, vilket innefattar steget att välja ut uppsättningen rasterpunkter från samtliga rasterpunkter för den regi- strerade bilden genom att minimera en kombinerad entropi för rasterpunkterna, varvid entropin för en rasterpunkt beror på rasterpunktssannolikheterna och varvid den är maximal då rasterpunktssannolikheterna är lika stora och minimal då alla utom en av rasterpunktssannolikheterna är noll.
20. Anordning (1) innefattar en sensor (6) för positionsbestämning vilken för registrering av en bild av (17, 51, 55, 59) på en yta (4, 16, 50) och behandlingsorgan (9) för bestämning av en position på en positionskod ytan utgående från den registrerade bilden, k ä n n e - t e c k n a d av att den är anordnad att i bilden identi- (18, 27, 52, 56) nierar ett antal möjliga värden, fiera markeringar vilka var och en defi- att för var och en av markeringarna och för vart och ett av värdena beräkna en värdesannolikhet att markeringen definierar detta värde och att utifrån värdesannolikheterna och de motsvarande värdena bestämma positionen på ytan.
21. Minnesmedium på vilket det finns lagrat ett datorprogram för positionsbestämning utgående från en digital bild, vilket datorprogram innefattar instruk- tioner som bringar en dator att ta emot en bild av en (17, 51, 55, 50) på en yta (4, 16, 50), identifiera markeringar (18, 27, 52, 56) i bilden, markeringar var och en definierar ett antal möjliga positionskod att vilka värden, att för var och en av markeringarna och för vart och ett av värdena beräkna en värdesannolikhet att markeringen definierar detta värde och att utifrån värde- 523 700 28 sannolikheterna och de motsvarande värdena bestämma positionen på ytan (4, 16, 50).
SE0102255A 2001-06-26 2001-06-26 Förfarande, anordning och minnesmedium för positionsbestämning SE523700C2 (sv)

Priority Applications (9)

Application Number Priority Date Filing Date Title
SE0102255A SE523700C2 (sv) 2001-06-26 2001-06-26 Förfarande, anordning och minnesmedium för positionsbestämning
EP02744037A EP1405255B1 (en) 2001-06-26 2002-06-25 Method and device for data decoding
JP2003507754A JP4282474B2 (ja) 2001-06-26 2002-06-25 データデコーディングの方法およびデバイス
AT02744037T ATE434232T1 (de) 2001-06-26 2002-06-25 Verfahren und einrichtung zur datendecodierung
CNB02812720XA CN1301456C (zh) 2001-06-26 2002-06-25 数据解码的方法和设备
PCT/SE2002/001246 WO2003001441A1 (en) 2001-06-26 2002-06-25 Method and device for data decoding
DE60232659T DE60232659D1 (de) 2001-06-26 2002-06-25 Verfahren und einrichtung zur datendecodierung
US10/179,263 US6732927B2 (en) 2001-06-26 2002-06-26 Method and device for data decoding
US10/819,105 US7195166B2 (en) 2001-06-26 2004-04-07 Method and device for data decoding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE0102255A SE523700C2 (sv) 2001-06-26 2001-06-26 Förfarande, anordning och minnesmedium för positionsbestämning

Publications (3)

Publication Number Publication Date
SE0102255D0 SE0102255D0 (sv) 2001-06-26
SE0102255L SE0102255L (sv) 2002-12-27
SE523700C2 true SE523700C2 (sv) 2004-05-11

Family

ID=20284606

Family Applications (1)

Application Number Title Priority Date Filing Date
SE0102255A SE523700C2 (sv) 2001-06-26 2001-06-26 Förfarande, anordning och minnesmedium för positionsbestämning

Country Status (7)

Country Link
EP (1) EP1405255B1 (sv)
JP (1) JP4282474B2 (sv)
CN (1) CN1301456C (sv)
AT (1) ATE434232T1 (sv)
DE (1) DE60232659D1 (sv)
SE (1) SE523700C2 (sv)
WO (1) WO2003001441A1 (sv)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7145556B2 (en) 2001-10-29 2006-12-05 Anoto Ab Method and device for decoding a position-coding pattern
CN102999746B (zh) * 2002-09-26 2016-11-23 Ip解决方案株式会社 使用光点图形的信息重放、输入输出方法、信息重放装置、便携信息输入输出装置以及电子玩具
US7672513B2 (en) 2003-04-29 2010-03-02 Anoto Ab Methods, apparatus, computer program and storage medium for position decoding
SE0301248D0 (sv) * 2003-04-29 2003-04-29 Anoto Ab Methods, apparatus, computer program and storage medium for position decoding
US7753283B2 (en) * 2003-06-13 2010-07-13 Anoto Aktiebolag (Anoto Ab) On-demand printing of coding patterns
SE0303370D0 (sv) 2003-12-16 2003-12-16 Anoto Ab Method, apparatus, computer program and storage medium for recording a movement of a user unit
US8074891B2 (en) * 2005-06-17 2011-12-13 Anoto Ab Coding and decoding methods and apparatuses
US7445160B2 (en) 2006-06-14 2008-11-04 Hewlett-Packard Development Company, L.P. Position location using error correction
JP2008052403A (ja) * 2006-08-23 2008-03-06 Univ Of Tokyo 2次元位置情報がコード化された模様、当該模様を用いた位置同定システム及び方法
CN101840500B (zh) * 2010-06-01 2014-11-19 福建新大陆电脑股份有限公司 一种基于置信度的码字解码装置及方法
US10620754B2 (en) 2010-11-22 2020-04-14 3M Innovative Properties Company Touch-sensitive device with electrodes having location pattern included therein
CN108664834A (zh) * 2017-04-02 2018-10-16 田雪松 基于匹配度的位置解码方法
CN108664868A (zh) * 2017-04-02 2018-10-16 田雪松 一种解码装置和解码方法
CN108664958A (zh) * 2017-04-02 2018-10-16 田雪松 数据解码方法和数据解码装置
CN108985421B (zh) * 2018-08-14 2021-05-07 上海掌门科技有限公司 编码信息的生成方法和识别方法
CN109840444B (zh) * 2019-01-25 2023-07-21 努比亚技术有限公司 一种扫码识别方法、设备及计算机可读存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5221833A (en) 1991-12-27 1993-06-22 Xerox Corporation Methods and means for reducing bit error rates in reading self-clocking glyph codes
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
ATE469390T1 (de) * 1999-05-28 2010-06-15 Anoto Ab Positionsbestimmung
SE517445C2 (sv) 1999-10-01 2002-06-04 Anoto Ab Positionsbestämning på en yta försedd med ett positionskodningsmönster
JP2003513832A (ja) * 1999-10-25 2003-04-15 シルバーブルック リサーチ ピーティーワイ リミテッド センサを有する電子的に制御可能なペン

Also Published As

Publication number Publication date
CN1520576A (zh) 2004-08-11
SE0102255D0 (sv) 2001-06-26
ATE434232T1 (de) 2009-07-15
EP1405255B1 (en) 2009-06-17
CN1301456C (zh) 2007-02-21
DE60232659D1 (de) 2009-07-30
EP1405255A1 (en) 2004-04-07
JP2004536392A (ja) 2004-12-02
WO2003001441A1 (en) 2003-01-03
SE0102255L (sv) 2002-12-27
JP4282474B2 (ja) 2009-06-24

Similar Documents

Publication Publication Date Title
SE523700C2 (sv) Förfarande, anordning och minnesmedium för positionsbestämning
US6732927B2 (en) Method and device for data decoding
US6689966B2 (en) System and method for determining positional information
US20030029919A1 (en) Reading pen
SE517445C2 (sv) Positionsbestämning på en yta försedd med ett positionskodningsmönster
EP1579379B1 (en) Information code including redundant information providing copy protection
EP1703434B1 (en) Information i/o method using a dot pattern
SE516109C2 (sv) Förfarande, system och datorprogram för dokumenthantering med hjälp av positionskodningsmönster
SE516522C2 (sv) Positionsbestämning
SE516310C2 (sv) Produkt med två kodningsmönster, innefattande rasterpunkter; samt förfarande, datorprogram och anordning för att avläsa kodningsmönstren
SE506353C2 (sv) Dynamiskt variabel maskinläsbar binär kod samt förfarande för läsning och alstring av densamma
JP2010102723A (ja) 位置コードを達成し且つ位置コードをデコーディングするための方法
JP2006525593A (ja) 位置復号のための方法、装置、コンピュータプログラム及び記憶媒体本願は、ともに参照することにより本書に含まれる2003年4月29日に出願されたスウェーデン特許出願番号第0301248−1号、及び2003年4月29日に出願された米国特許仮出願番号第60/466,036号の利益を主張する。
JP2004536392A5 (sv)
EP2044558B1 (en) Position location using error correction
SE520045C2 (sv) Kodningsmönster
JP2004533693A (ja) 位置決定のデバイス、方法およびコンピュータプログラム
US7729539B2 (en) Fast error-correcting of embedded interaction codes
WO2005055129A1 (ja) デジタル情報担体
JP4383961B2 (ja) デジタル情報記録担体
JP3853331B2 (ja) デジタル情報記録方法
JP4698308B2 (ja) 文字入力装置、文字入力プログラム、および文字入力プログラムを記録する記録媒体
SE520211C2 (sv) Positionsbestämning
CN1404298A (zh) 图像处理装置和图像处理方法以及程序和存储媒体
JP2005149475A (ja) デジタル情報坦体

Legal Events

Date Code Title Description
NUG Patent has lapsed