SE520211C2 - Positionsbestämning - Google Patents

Positionsbestämning

Info

Publication number
SE520211C2
SE520211C2 SE0200079A SE0200079A SE520211C2 SE 520211 C2 SE520211 C2 SE 520211C2 SE 0200079 A SE0200079 A SE 0200079A SE 0200079 A SE0200079 A SE 0200079A SE 520211 C2 SE520211 C2 SE 520211C2
Authority
SE
Sweden
Prior art keywords
series
cyclic
speech
sub
starting
Prior art date
Application number
SE0200079A
Other languages
English (en)
Other versions
SE0200079L (sv
SE0200079D0 (sv
Inventor
Mats-Petter Pettersson
Tomas Edsoe
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 SE0200079A priority Critical patent/SE520211C2/sv
Publication of SE0200079L publication Critical patent/SE0200079L/sv
Publication of SE0200079D0 publication Critical patent/SE0200079D0/sv
Publication of SE520211C2 publication Critical patent/SE520211C2/sv

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
    • 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/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03542Light pens for emitting or receiving light
    • G06K9/18
    • 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/22Character recognition characterised by the type of writing
    • G06V30/224Character recognition characterised by the type of writing of printed characters having additional code marks or containing code marks

Description

lO l5 20 25 30 520 211 2 olika tal. Detta innebär att varje koordinatpar X, Y kodas med en komplex symbol med ett speciellt utseende.
I det andra exemplet anges koordinaterna i varje punkt pä skrivytan med hjälp av streckkod, varvid en streckkod för X-koordinaten är angiven ovanför en streck- kod för Y-koordinaten.
Som ett tredje exempel anges att ett schackruts- mönster kan användas för att koda X- och Y-koordinaterna.
Det finns dock ingen förklaring till hur schackruts- mönstret är uppbyggt eller hur det kan översättas till koordinater.
Ett problem med det kända mönstret är att det är uppbyggt av komplexa symboler och ju mindre dessa sym- boler görs desto svärare blir det att framställa den mönstrade skrivytan och desto större blir risken för fel- aktiga positionsbestämningar, men ju större symbolerna görs desto sämre blir positionsupplösningen.
Ett ytterligare problem är att processorns behand- ling av det detekterade positionskodningsmönstret blir tämligen komplicerad på grund av att det är komplexa symboler som skall tolkas. Ännu ett problem är att detektorn mäste utformas så att den kan registrera fyra symboler samtidigt sä att den säkert fär med minst en symbol i sin helhet, vilket krävs för att positionsbestämningen skall kunna genomföras.
I sökandens svenska patentansökan SE 9901954-9, som ingavs den 28 maj 1999 och som inte var offentlig vid in- givandet av föreliggande ansökan och därmed inte tillhör teknikens ståndpunkt, beskrivs bl a ett positionskod- ningsmönster som i stor utsträckning avhjälper ovan- lO 15 20 25 30 520 211 Sammanfattning av uppfinningen Ett ändamål med föreliggande uppfinning är att helt eller delvis avhjälpa ovannämnda problem hos teknikens ståndpunkt.
Detta ändamål uppnås med ett sätt att åstadkomma ett positionskodningsmönster enligt patentkrav 1, ett sätt att bestämma en position enligt patentkrav 14, och en anordning för positionsbestämning enligt patentkrav 22.
Föredragna utföringsformer anges i underkraven.
Enligt en första aspekt av uppfinningen avser denna således ett sätt att åstadkomma ett positionskodnings- mönster, vilket kodar ett flertal positioner på en yta, innefattande stegen att använda en första cyklisk talserie som har egenskapen att ingen sekvens med ett första förutbestämt antal siffror förekommer mer än en gång i talserien; koda koordinater för en första riktning på ytan genom att skriva ut den första cykliska talserien i kolumner över ytan, varvid olika kolumner börjar i olika positioner i talserien så att positions- förskjutningar uppkommer mellan angränsande kolumner; använda en andra cyklisk talserie som har egenskapen att ingen sekvens med ett första förutbestämt antal siffror förekommer mer än en gång i talserien; koda koordinater för en andra riktning på ytan genom att skriva ut den andra cykliska talserien i rader över ytan, varvid olika rader har olika startpositioner genom att de börjar i olika positioner i talserien, kännetecknat av steget att koda de första koordinaterna i den första riktningen var och en innefattar ett förutbestämt antal kolumner, och har en kolumns överlappning med angränsade kolumner, lO 15 20 25 30 520 211 4 och koda varje kolumngrupps koordinat i den första riktningen med hjälp av positionsförskjutningarna mellan angränsande kolumner inom gruppen.
En stor fördel med detta sätt är att ett entydigt ”flytande” positionskodningsmönster kan àstadkommas utan stor redundans.
Den första och den andra talserien kan, men behöver inte, vara identiska.
Positionskodningsmönstret är alltså baserat på en första cyklisk, företrädesvis binär, talserie som har egenskapen att ingen sekvens med ett första förutbestämt antal siffror förekommer mer än en gäng i talserien.
Genom att positionskodningsmönstret byggs upp pä detta sätt kommer det att innehålla inherent information om positionerna sä att koordinaterna kan räknas ut med förutbestämda regler. Detta är fördelaktigt för det be- tyder att avkodningen av positionskodningsmönstret kan implementeras pà ett effektivt sätt i exempelvis mjuk- vara. Dessutom blir det mycket enklare att framställa positionskodningsmönstret på detta sätt i förhållande till om man slumpmässigt skulle försöka generera ett entydigt positionskodningsmönster av flytande typ.
Enligt en andra aspekt av uppfinningen avser denna ett sätt att bestämma en position, i en första riktning, för en delyta pà en yta som är försedd med ett positionskodningsmönster, som kodar koordinater för en första riktning pà ytan pà basis av en första cyklisk talserie, vilken har egenskapen att positionen i tal- serien för varje första talsekvens med ett förutbestämt antal siffror är entydigt bestämd och vilken är utskriven varvid olika kolumner börjar i 1 i kolimner över ytan, olika positioner i talserien så att positionsförskjut- ningar uppkommer mellan angränsande kolumner, inne- lO l5 20 25 30 520 211 5 fattande stegen att identifiera ett flertal första talsekvenser från positionskoden på delytan, bestämma varje första talsekvens position i den första cykliska talserien,pà basis av dessa positioner bestämma positionsförskjutningarna mellan de angränsande kolumnerna i vilka de första talsekvenserna frän delytan ingår, kännetecknat av stegen att utifrån positionsförskjutningarna bestämma en koordinat i den första riktningen för en första kolumngrupp, som nämnda delyta åtminstone delvis överlappar, vilken första kolumngrupp är en av ett flertal kolumngrupper i den första riktningen, vilka var och en innefattar ett förutbestämt flertal kolumner och har en kolumns över- lappning med angränsande kolumngrupper.
Sättet kan realiseras med ett datorprogram. Detta kan användas tillsammans med kända positionsbestämnings- anordningar. Det kan installeras i en separat dator, till vilken bilder av positionskodningsmönstret skickas, eller i själva den anordning som registrerar positionskodningsmönstret.
Enligt en tredje aspekt av uppfinningen avser denna en anordning för positionsbestämning, innefattande en sensor för åstadkommande av en bild av en delyta av en yta, som är försedd med ett positionskodningsmönster, och bildbehandlingsorgan, som är anordnade att utifrån den delmängd av positionskodningsmönstret som finns i bilden av delytan beräkna en position för delytan i enlighet med sättet enligt något av krav 14-20.
Fördelarna med anordningen framgår av ovanstående diskussion.
Genom att bildbehandlinosoroanen i anordningen är anordnade att bestämma positionen på ett ”regelbaserat” sätt, behöver anordningen ingen stor minneskapacitet, lO l5 20 25 30 520 211 6 vilket är en fördel när det gäller tillverkningskostnaden för anordningen och möjligheten att göra en stand-alone- enhet.
Bildbehandlingsorganen utgörs med fördel av en lämp- ligt programmerad processor.
Anordningen kan realiseras som en självständig en- het. Alternativt kan sensorn finnas i ett första hölje medan bildbehandlingsorganen finns i ett annat hölje, t ex en persondator till vilken av sensorn registrerade bilder överförs.
Kort figurbeskrivning I det följande skall uppfinningen beskrivas mera i detalj genom ett utföringsexempel under hänvisning till bifogade ritningar, på vilka Fig 1 schematiskt visar en utföringsform av en pro- dukt som är försedd med ett positionskodningsmönster; Fig 2 schematiskt visar hur symbolerna kan vara ut- formade i en utföringsform av uppfinningen.
Fig 3 schematiskt visar ett exempel pä 4x4 symboler som används för att koda en position.
Fig 4 schematiskt visar en anordning som kan använ- das för positionsbestämning.
Beskrivning av en föredragen utföringsform I det följande beskrivs först exempel pä en produkt med positionskodningsmönster och den grafiska utformningen av positionskodningsmönstret i generella ordalag.
En produkt har en yta som är försedd med ett som har minst kodningsmönster, som innefattar symboler, tvà olika värden. Varje symbol innefattar en rasterpunkt och minst en markering.
Rasterpunkten ingar 1 ett raster som sträcker sig över ytan. Varje symbols värde indikeras 10 l5 20 25 30 520 211 7 av nämnda markerings placering i förhållande till en rasterpunkt.
I den kända tekniken kodas varje position med en komplex symbol som kräver igenkänning av många olika element och som därför blir störkänslig. Istället kan en symbol användas, vars värde anges av en markerings placering i förhållande till en rasterpunkt. Det finns alltså en typ av symbol för varje värde. Därmed behöver en anordning som skall utföra positionsbestämningen bara kunna detektera förekomsten av en markering och behöver den inte kunna skilja mellan olika element, såsom de olika strecken i en streckkod, för att kunna bestämma positionen. Därigenom blir detekteringen enklare och mindre störkänslig.
Utformningen av symbolen medför vidare att en yta som är försedd med ett kodningsmönster blir mera estetiskt tilltalande.
Vidare möjliggörs ett, i förhållande till informa- tionstätheten, stort avstånd mellan markeringarna vilket gör att kodningen blir mindre känslig för rörelseoskärpa.
I positionskodningsmönstret i den ovannämnda SE 9901954-9 används punkter av olika storlek för att grafiskt representera positionskodningen. De ovannämnda symbolerna kan med fördel användas istället för punkterna i positionskodningsmönstret_ Markeringarna kan ha olika utseende. Väsentligen alla markeringar kan vara identiska, varvid kodningsmönstret blir enklare att detektera och enklare att applicera på en yta.
Ovan beskrivna symboler kan användas för att koda vilken som hel t tvp av information, vv 1 fördel för att koda positioner. I den kända tekniken kodas varje position säsom nämnts med en enda symbol som lO 15 20 25 30 520 211 8 därför mäste vara tämligen komplex. Istället kan varje position kodas med ett flertal symboler. Därmed kan varje enskild symbol göras mindre komplex och därmed enklare att detektera med större säkerhet.
I den kända tekniken kodas vidare varje position med en symbol som är ”isolerad” från omgivande positioners symboler. Därmed begränsas positionsupplösningen av den yta som symbolen för en position upptar. Det här beskrivna positionskodningsmönstret kan vara uppbyggt på motsvarande vis, varvid varje position kodas av en ”isolerad” grupp av symboler. Emellertid kan också varje symbol bidra till kodningen av mer än en position. Pä detta sätt skapas en ”flytande” övergång mellan olika positioner. Annorlunda beskrivet kodas varje position delvis av samma symboler som de angränsande positionerna.
Den flytande kodningen är fördelaktig för den gör det möjligt att öka positionsupplösningen. Vidare kan förhållandet minska mellan ä ena sidan det antal symboler som en positionsbestämningsanordning måste registrera för att säkert kunna utföra en positionsbestämning och å andra sidan det antal symboler som kodar en position.
Varje symbol kan bidra till kodningen av både en första och en andra positionskoordinat. Det behövs alltsà inte olika symboler för de olika koordinaterna vilket gör positionskoden enklare och positionsupplösningen bättre.
Koordinatsystemet kan lämpligen vara kartesiskt, men även andra typer av koordinatsystem är tänkbara.
Vidare kan med fördel varje symbols värde vara över- sättningsbart till minst en första siffra som används för kodning av den första koordinaten och minst en andra siffra som anvands för kodning av den andra koordinaten, varvid symbolerna i positionskodningsmönstret tillsammans representerar en första positionskod för den första ko- lO 15 20 25 30 520 211 9 ordinaten och en andra positionskod för den andra koordi- naten. De båda koordinaterna kan då kodas oberoende av varandra, vilket gör kodningen enklare när kodningen är "flytande". Företrädesvis representeras symbolens värde binärt, varvid en första bit används för kodningen av en första koordinat och en andra bit för kodningen av en andra koordinat.
Produkten kan innefatta ett flertal skrivytor, som var och en innefattar positionskodningsmönstret_ Produkten kan exempelvis utgöras av ett anteckningsblock med flera blad. Positionskodningsmönstren skiljer sig då för de olika skrivytorna genom den sekvens i den cykliska talserien som en förutbestämd kolumn eller rad börjar mönster kan alltså användas för flera med. ”Samma” skrivytor, som kan vara åtskilda eller integrerade med varandra, genom att man låter exempelvis den första kolumnen börja i olika positioner i talserien.
Positionskodningsmönstret kan realiseras med vilken som helst parameter som kan användas för att åstadkomma symboler av ovannämnda typ som kan detekteras av en de- tektor. Parametern kan vara elektrisk eller kemisk eller av annan typ. Positionskodningsmönstret är emellertid företrädesvis optiskt avläsningsbart för då blir det enklare att anbringa på ytan. Mönstret skall alltså kunna reflektera ljus, men ljuset behöver inte ligga i det syn- liga området.
Rastret och/eller rasterpunkterna kan vara realise- rade på ytan. De är emellertid företrädesvis virtuella.
Rastret är alltså inte markerat på ytan överhuvudtaget, utan utgör bara ett tänkt raster som bildar grund för kodningen, men lokaliseras 1tifrån markeringarnas placeringar. 10 15 20 25 30 520 211 10 Den ovan beskrivna idén att översätta en symbols värde till en första siffra för kodning av den första koordinaten och en andra siffra i varje symbols värde för kodning av den andra koordinaten kan naturligtvis använ- das oberoende av den exakta utformningen av symbolerna.
Produkten kan därför ocksà beskrivas som en produkt som har en yta som är försedd med ett positions- kodningsmönster som kodar ett flertal positioner pà ytan och som innefattar ett flertal symboler, varvid varje symbol har minst fyra olika värden. Varje position pà ytan kodas med ett flertal symboler varje symbols värde är översättningsbart till minst en första siffra som används för kodning av en första koordinat och minst en andra siffra som används för kodning av en andra koordinat, varvid symbolerna i positionskodningsmönstret tillsammans representerar en första positionskod för den första koordinaten och en andra positionskod för den andra koordinaten.
Fördelarna med denna kodning framgår ovan. Den kan med fördel användas för realisering av en flytande kod- ning, exempelvis för realisering av en flytande kodning enligt SE 9901954-9. Vad som angetts ovan för produkten med ett kodningsmönster med markeringar och rasterpunkter gäller naturligtvis i tillämpliga delar även för den alternativa beskrivningen av produkten.
De ovan beskrivna produkterna kan vara vilka som helst produkter som har en yta med ett kodningsmönster.
De kan användas för en mängd olika tillämpningar. De kan exempelvis användas för att fortlöpande registrera posi- tionen för en penna som förs över skrivytan. De kan vidare användas vid bestämning av positionen för ett verktyg. ett instrument eller liknande. De kan också lO 15 20 25 30 520 211 ll användas som en musmatta. Fackmannen kan tänka ut många andra tillämpningar.
I fig I visas en del av en produkt i form av ett papper 1, som på sin yta 2 är försett med ett optiskt avläsningsbart positionskodningsmönster 3 som möjliggör positionsbestämning. Positionskodningsmönstret består av symboler 4, som är systematiskt anordnade över ytan 2, så att denna har ett ”mönstrat” utseende. Pappret har en x- koordinataxel och en y-koordinataxel. I detta fall kan positionsbestämning utföras på hela produktens yta. I andra fall kan ytan som medger positionsbestämning utgöra en mindre del av produkten. Pappret kan exempelvis an- vändas för att åstadkomma en elektronisk representation av information som skrivs eller ritas på ytan. Den elek- troniska representationen kan åstadkommas genom att man löpande under skrivning på ytan med en penna, bestämmer pennans position på pappret genom avläsning av positions- kodningsmönstret.
Positionskodningsmönstret innefattar ett virtuellt raster, som alltså varken syns för det mänskliga ögat eller kan detekteras direkt av en anordning som skall be- stämma positioner på ytan, och ett flertal symboler 4, som var och en kan anta ett av fyra värden ”l”-”4” såsom beskrivs i det följande. Det skall i detta sammanhang på- pekas att positionskodningsmönstret i fig 1 för åskådlig- hetens skull är kraftigt förstorat. Dessutom visas det bara på en del av pappret.
Positionskodningsmönstret är så arrangerat att en delytas position på skrivytan kodas av symbolerna på 5b visas denna delyta. En första och en andra delyta 5a, Den Hcl med streckade linjer i fig 1. . c . . a -I av positionskod- ningsmönstret (här 3 x 3 symboler) som finns på den första delytan 5a kodar en första position, och den del 10 15 20 25 520 211 12 av positionskodningsmönstret som finns på den andra del- ytan 5b kodar en andra position. Positionskodningsmönst- ret är således delvis gemensamt för de angränsande första och andra positionerna. Ett sådant positionskodnings- mönster betecknas i denna ansökan som "flytande".
I fig 2a-d visas en utföringsform av en symbol som kan användas i positionskodningsmönstret enligt uppfinn- ingen. Symbolen innefattar en virtuell rasterpunkt 6, som representeras av skärningspunkten mellan rasterlinjerna, samt en markering 7 som har formen av en punkt. Symbolens värde beror på var markeringen är placerad. I exemplet i fig 2 finns fyra möjliga placeringar, en på var och en av rasterlinjerna som utgår från rasterpunkterna. Förskjut- ningen från rasterpunkten är lika stor för alla värden. I det följande har symbolen i fig 2a värdet I, i fig 2b värdet 2, i fig 2c värdet 3 och i fig 2d värdet 4. Annor- lunda uttryckt finns det fyra olika typer av symboler.
Varje symbol kan alltså representera fyra värden ”I-4”. Detta medför att positionskodningsmönstret kan delas upp i en första positionskod för X-koordinaten, och en andra positionskod för y-koordinaten. Uppdelningen görs enligt följande: Symbolvärde X-kod y-kod 1 1 1 2 O 1 3 1 O 4 O O Varje symbols värde översätts alltså till en första 'FF SlLL-V- ia, här bit, för x-koden och en andra siffra, här bit, för y-koden. På detta sätt får man två helt obe- roende bitmönster. Mönstren kan kombineras till ett l0 15 20 25 520 211 13 gemensamt mönster, som kodas grafiskt med hjälp av ett flertal symboler enligt fig 2.
Varje position kodas med hjälp av ett flertal sym- boler. I detta exempel används 4x4 symboler för att koda en position i tvà dimensioner, dvs en x-koordinat och en y-koordinat.
Positionskoden byggs upp med hjälp av en talserie av ettor och nollor, som har egenskapen att ingen sekvens av fyra bitar förekommer mer än en gång i serien. Talserien är cyklisk, vilket betyder att egenskapen också gäller när man kopplar ihop slutet av serien med dess början. En fyra bitars sekvens har alltså alltid en entydigt bestämd position i talserien.
Serien kan maximalt vara 16 bitar lång om den skall ha ovan beskrivna egenskap för sekvenser om fyra bitar. I detta exempel används emellertid bara en sju bitar lång serie enligt följande: ”0 0 0 1 0 1 0”.
Denna serie innehåller sju unika sekvenser om fyra bitar som kodar en position i serien enligt följande: Position i serien Sekvens 0001 0010 0101 1010 0100 1000 (fikfloblukli-“CD 0000 För kodning av x-koordinaten, skriver man talserien sekventiellt i kolumner över hela den yta som skall kodas. Kodningen bygger pà differensen eller positions- lO 15 20 25 30 520 211 14 förskjutningen mellan tal i angränsande kolumner. Diffe- rensens storlek bestäms av i vilken position (dvs med vilken sekvens) i talserien som man låter kolumnen börja.
Om man närmare bestämt tar differensen modulo sju mellan à ena sidan ett tal, som kodas av en fyrabitars sekvens i en första kolumn och som alltså kan ha värdet(positionen) O-6, och á andra sidan motsvarande tal (dvs sekvensen pä samma ”höjd”) i en angränsande kolumn, kommer resultatet bli detsamma oberoende av var längs de tvà kolumnerna som man gör jämförelsen. Med hjälp av differensen mellan tvà kolumner kan man alltså koda en X-koordinat som är kon- stant för alla y-koordinater.
Eftersom varje position pà ytan kodas med 4x4 symbo- ler i detta exempel, har man tillgång till tre differen- ser (med värdet 0-6) enligt ovan för att koda x-koordi- naten. Kodningen görs dä pà så sätt att av de tre diffe- renserna kommer en alltid att ha värdet 1 eller 2 och de bàda övriga att ha värden i intervallet 3-6. Inga diffe- renser får alltså vara noll i x-koden. Med andra ord konstrueras X-koden så att differenserna blir som följer: (3-6) (3-6) (l-2) (3-6) (3-6) (1-2) (3-6) (3-6) (l-2)...
Varje X-koordinat kodas alltså med två tal mellan 3 och 6 samt ett efterföljande tal som är 1 eller 2. Om man sub- traherar tre från de höga talen och ett från det läga fär man ett tal i blandad bas, som direkt ger en position i x-riktningen, fràn vilken X-koordinaten sen kan bestämmas direkt, såsom visas i exemplet nedan.
Med hjälp av ovan beskrivna princip kan man alltsà koda x-koordinater 0,l,2..., med hjälp av tal som repre- senterar tre differenser. Dessa differenser kodas med ett bitmönster som baseras pà talserien ovan k. r., u. a. till slut kodas grafiskt med hjälp av symbolerna i fig 2. lO 15 20 25 30 520 211 15 I mänga fall kommer man när man läser in 4x4 symbo- ler inte få fram ett komplett tal som kodar x-koordina- ten, utan delar av två tal. Eftersom den minst signifi- kanta delen av talen alltid är 1 eller 2 kan man emeller- tid enkelt rekonstruera ett komplett tal.
Y-koordinaterna kodas enligt samma princip som an- vänds för X-koordinaterna. Den cykliska talserien skrivs upprepade gånger i horisontella rader över ytan som skall positionskodas. Precis som för x-koordinaterna låter man raderna börja i olika positioner, dvs med olika sekven- ser, i talserien. För y-koordinaterna använder man dock inte differenser utan kodar koordinaterna med tal som baseras på talseriens startposition på varje rad. När man har bestämt X-koordinaten för 4X4 symboler, kan man näm- ligen bestämma startpositionerna i talserien för de rader som ingår y-koden i de 4x4 symbolerna. I y-koden, bestäm- mer man den mest signifikanta siffran genom att låta denna vara den enda som har ett värde i ett speciellt intervall. I detta exempel låter man en rad av fyra börja i position O-1 i talserien, för att indikera att denna rad avser den minst signifikanta siffran i en y-koordi- nat, och de tre övriga börja i position 2-6. I y-led finns alltså en serie av tal enligt följande: (2-6) (2-6) (2-6) (o-i) (2-6) (2-6) (2-6) (o-l) (2-6)...
Varje y-koordinat kodas alltså med tre tal mellan 2 och 6 och ett efterföljande tal mellan O och l.
Om man subtraherar l från det låga talet och 2 från de höga erhåller man på motsvarande sätt som för x-rikt- ningen en position i y-riktningen i blandad bas från vilken man direkt kan bestämma y-koordinaten.
Med metoden ovan kan man koda 4 x 4 x 2 = 32 posi- tioner i x-led. Varje sådan position motsvarar tre dif- ferenser, vilket ger 3 x 32 = 96 positioner. Vidare kan lO 15 20 25 30 520 211 16 man koda 5 X 5 X 5 X 2= 250 positioner i y-led. Varje sådan position motsvarar 4 rader, vilket ger 4 X 250 = 1000 positioner. Tillsamman kan man alltsà koda 96000 positioner. Eftersom X-kodningen är baserad på diffe- renser kan man emellertid välja i vilken position den första talserien börjar. Om man tar hänsyn till att denna första talserie kan börja i sju olika positioner, kan man koda 7 X 96000 = 672000 positioner. Startpositionen för den första talserien i den första kolumnen kan räknas ut när X-koordinaten har bestämts. De ovannämnda sju olika startpositionerna för den första serien kan koda olika blad eller skrivytor på en produkt.
För att ytterligare illustrera uppfinningen enligt denna utföringsform följer här ett specifikt exempel som är baserat pà den beskrivna utföringsform av positions- koden.
I fig 3 visas ett exempel på en bild med 4x4 symbo- ler som avläses av en anordning för positionsbestämning.
Dessa 4X4 symboler har följande värden: UJ k) lUNbJu-lš- rbußøbtx) Dessa värden representerar följande binära X- och y- kod: X-kod: y-kod 0 0 0 0 O 0 0 1 lOlO OlOO 0000 0010 10 15 20 25 30 520 211 17 De vertikala x-sekvenserna kodar följande positioner i talserien: 2 0 4 6. Differenserna mellan kolumnerna blir -2 4 2, vilket modulo 7 ger: 5 4 2, vilket i blandad bas kodar position (5-3) x 8 + (4-3) X 2 + (2-1) = 16 + 2 + 1 = 19. Eftersom den första kodade X-positionen är position 0, är den differens som ligger i intervallet 1-2 och som syns i de 4x4-symbolerna den tjugonde sådan dif- ferensen. Eftersom det vidare går totalt tre kolumner på varje sådan differens och det finns en startkolumn, tillhör den vertikala sekvensen längst till höger i 4x4- X-koden den 61:a kolumnen i X-koden (3 X 20 + l= 61) och den längst till vänster den 58:e.
De horisontella y-sekvenserna kodar positionerna 0 4 1 3 i talserien. Eftersom dessa serier börjar i den 58:e kolumnen är radernas startposition dessa tal minus 57 modulo7, vilket ger startpositionerna 6 3 0 2. Över- satt till siffror i den blandade basen blir detta 6-2, 3-2, 0-0, 2-2 = 4 1 0 0, där den tredje siffran är den minst signifikanta siffran i det aktuella talet. Den fjärde siffran är då den mest signifikanta siffran i nästa tal. Den måste i detta fall vara densamma som i det aktuella talet. (Undantagsfallet är när det aktuella talet består av högsta möjliga siffror i alla positioner.
Dä vet man att inledningen på nästa tal är ett större än inledningen av det aktuella talet.) Positionen för fyra siffrors talet blir i den blan- dade basen 0x50 + 4x10 +1x2 + OX1 = 42.
Den tredje raden i y-koden är alltså den 43:e som har startposition 0 eller 1, och eftersom det går fyra rader totalt på varje sådan rad, är den tredje raden nummer 43x4=l72; I detta exempel är alltså positionen för det översta vänstra hörnet för 4x4-symbolgruppen (58,170). lO 15 20 25 30 520 211 l8 Eftersom x-sekvenserna i 4x4-gruppen börjar pä rad 170, startar hela mönstrets x-kolumner i talseriens positioner ((2 O 4 6) -169) mod 7 = 1 6 3 5. Mellan den sista startpositionen (5) och den första startpositionen kodas talen O-19 i den blandade basen, och genom att sum- mera representationerna för talen O-19 i den blandade basen får man den totala differensen mellan dessa kolum- ner. En naiv algoritm för att göra detta är att generera dessa tjugo tal och direkt summera deras siffror. Den er- hållna summan kalla s. Bladet eller skrivytan ges då av (5-s)modulo7.
I exemplet ovan har beskrivits en utföringsform där varje position kodas med 4 x 4 symboler och en talserie med 7 bitar används. Detta är naturligtvis bara ett exempel. Positioner kan kodas med fler eller färre sym- boler. Det behöver inte vara lika många i bàda rit- ningarna. Talserien kan ha annorlunda längd och behöver inte vara binär, utan kan bygga pä en annan bas. Olika talserier kan användas för kodning i x-led och kodning i y-led. Symbolerna kan ha annorlunda antal värden.
I exemplet ovan är vidare markeringen en punkt.
Naturligtvis kan den ha ett annat utseende. Den kan exempelvis utgöras av ett streck som börjar i den vir- tuella rasterpunkten och sträcker sig ut från denna till en bestämd position.
I exemplet ovan används symbolerna inom en kvadra- tisk delyta för kodning av en position. Delytan kan ha annan form, exempelvis hexagonal. Symbolerna behöver heller inte vara anordnade i rader och kolumner i 90 graders vinkel mot varandra utan kan också vara anordnade i an dra arrangemang.
För att positionskoden skall kunna detekteras be- höver det virtuella rastret bestämmas. Detta kan göras lO 15 20 25 30 520 211 19 genom att man studerar avståndet mellan olika marke- ringar. Det kortast avståndet som finns mellan två mar- keringar måste härröra från två angränsande symboler med värdet 1 och 3 så att markeringarna ligger på samma ras- terlinje mellan två rasterpunkter. När ett sådant par av markeringar har detekterats kan de tillhörande raster- punkterna bestämmas med kännedom om avståndet mellan rasterpunkterna och markeringarnas förskjutning från rasterpunkterna. När väl två rasterpunkter har lokali- serats kan ytterligare rasterpunkter bestämmas med hjälp av uppmätta avstånd till andra markeringar och med känne- dom om rasterpunkternas inbördes avstånd.
En utföringsform av en anordning för positions- bestämning visas schematiskt i fig 4. Den innefattar ett hölje 11, som är format ungefär som en penna. I höljets kortända finns en öppning 12. 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.
Höljet inrymmer i huvudsak en optikdel, en elektro- nikdel och en strömförsörjning.
Optikdelen innefattar minst en lysdiod 13 för be- lysning av den yta som skall avbildas och en ljuskànslig areasensor 14, exempelvis en CCD- eller CMOS-sensor, för registrering av en tvådimensionell bild. Eventuellt kan anordningen dessutom innehålla ett linssystem.
Strömförsörjningen till anordningen erhålls från ett batteri 15 som är monterat i ett separat fack i höljet.
Elektronikdelen innehåller bildbehandlingsorgan 16 för bestämning av en position på basis av den med sensorn 14 registrerade bilden - och närmare bestämt en processor- enhet med en processor som är programmerad till att läsa lO 15 20 25 30 520 211 20 in bilder fràn sensorn och utföra positionsbestämning pà basis av dessa bilder.
Anordningen innefattar också i denna utföringsform en pennspets 17, med vars hjälp man kan skriva vanlig färgämnesbaserad skrift pà ytan på vilken positionsbe- stämningen skall ske. Pennspetsen 17 är in- och utfällbar så att användaren kan styra om den skall användas eller ej. I vissa tillämpningar behöver anordningen inte ha någon pennspets alls.
Anordningen innefattar vidare knappar 18 med vars hjälp anordningen aktiveras och styrs. Den har också en sändtagare 19 för trådlös överföring, t ex med IR-ljus eller radiovàgor, av information till och frän anord- ningen. Anordningen kan vidare innefatta en display 20 för visning av positioner eller registrerad information.
I sökandens svenska patent nr 9604008-4 beskrivs en anordning för registrering av text. Denna anordning kan användas för positionsbestämning om den programmeras pà lämpligt sätt. Om den skall användas för färgämnesbaserad skrivning sä mäste den vidare kompletteras med en penn- spets.
Anordningen kan vara uppdelad i olika fysiska höl- jen, varvid ett första hölje innehåller komponenter som är nödvändiga för att ta bilder av positionskodnings- mönstret och för att överföra dessa till komponenter som finns i ett andra hölje och som utför positionsbestäm- ningen pä basis av den eller de registrerade bilderna.
Positionsbestämningen görs såsom nämnts av en pro- cessor som alltså mäste ha programvara för att i en bild lokalisera och avkoda symbolerna och för att fràn det sàlunda erhållna koderna bestämma positioner. Fackmannen kan, utifràn exemplet ovan, konstruera programvara som lO 15 520 211 2l utför positionsbestämning på basis av bild av en del av ett positionskodningsmönster.
Vidare kan fackmannen, på basis av beskrivningen ovan, konstruera programvara för utskrift av positions- kodningsmönstret.
I utföringsexemplet ovan är mönstret optiskt avläs- ningsbart och sensorn således optisk. Såsom nämnts kan mönstret vara baserat på en annan parameter än en optisk parameter. I sådant fall måste naturligtvis sensorn vara av en typ som kan avläsa den aktuella parametern.
I utföringsexemplet ovan är rastret ett rutnät. Det kan även ha andra former.
I utföringsexemplet ovan används inte den längsta möjliga cykliska talserien. Därmed åstadkommer man en viss redundans som kan användas exempelvis för att kon- trollera vridningen hos den inlästa gruppen av symboler.

Claims (24)

10 15 20 25 30 520 211 22 PATENTKRAV
1. Sätt att åstadkomma ett positionskodningsmönster, vilket kodar ett flertal positioner pà en yta, inne- fattande stegen att använda en första cyklisk talserie som har egen- skapen att ingen sekvens med ett första förutbestämt antal siffror förekommer mer än en gäng i talserien; koda koordinater för en första riktning pá ytan genom att skriva ut den första cykliska talserien i kolumner över ytan, varvid olika kolumner börjar i olika positioner i talserien så att positionsförskjutningar uppkommer mellan angränsande kolumner; använda en andra cyklisk talserie som har egenskapen att ingen sekvens med ett första förutbestämt antal siffror förekommer mer än en gäng i talserien; koda koordinater för en andra riktning på ytan genom att skriva ut den andra cykliska talserien i rader över ytan, varvid olika rader har olika startpositioner genom att de börjar i olika positioner i talserien, k ä n n e t e c k n a t av steget att koda de första koordinaterna i den första riktningen innefattar att dela in kolumnerna i kolumngrupper, som var och en innefattar ett förutbestämt antal kolumner, och har en kolumns överlappning med angränsande kolumner, och koda varje kolumngrupps koordinat i den första riktningen med hjälp av positionsförskjutningarna mellan angränsande kolumner inom gruppen.
2. Sätt enligt krav 1, vidare innefattande stegen att koda de andra koordinaterna för den andra riktning som var och n genom att dela in raderna i radgrtpper, innefattar ett förutbestämt flertal rader, och koda varje 10 15 20 25 30 520 211 23 radgrupps koordinat i den andra riktningen med hjälp av startpositionerna.
3. Sätt enligt krav l, varvid åtminstone vissa av positionsförskjutningarna mellan angränsande kolumner är större än 1.
4. Sätt enligt något av föregående krav, varvid positionsförskjutningarna i varje kolumngrupp bildar ett positionstal i blandad bas som ger kolumngruppens koordi- nat i den första riktningen.
5. Sätt enligt krav 4, vidare innefattande steget att märka ut den minst signifikanta positionsförskjut- ningen genom att använda sådana positionsförskjutningar mellan angränsande kolumner i varje kolumngrupp att den minst signifikanta positionsförskjutningen är mindre än övriga positionsförskjutningar.
6. Sätt enligt något av föregående krav, innefattan- de steget att skapa olika varianter av positionskoden genom att låta den första cykliska talserien i den första riktningen börja i olika positioner för olika varianter.
7. Sätt enligt något av krav 2-6, varvid start- positionerna i varje radgrupp bildar ett positionstal i blandad bas som ger radgruppens koordinat i den andra riktningen.
8. Sätt enligt krav 7, vidare innefattande steget att märka ut den minst signifikanta startpositionen genom att använda sådan starpositioner i varje radgrupp att den minst signifikanta startpositionen är mindre än övriga startpositioner.
9. Sätt enligt något av föregående krav, varvid den första cykliska talserien är identisk med den andra cykliska talserien.
10. Sätt enligt krav 9, varvid den första och den andra talserien är binär. lO 15 20 25 30 520 211 24
11. ll. Sätt enligt något av föregående krav, varvid utskriften av den första och den andra cykliska talserien görs på så sätt att varje skärningspunkt mellan raster- linjer i ett raster som täcker ytan tillordnas ett tal från den första cykliska talserien och ett tal från den andra cykliska talserien och de till varje skärningspunkt tillordnade talen kodas grafiskt med en markering på ytan i anslutning till skärningspunkten, varvid de olika möj- liga kombinationerna av talen från den första och den andra cykliska talserien kodas genom olika placering av markeringen i förhållande till skärningspunkten.
12. Sätt enligt något av föregående krav, vidare innefattande steget att generera den första och den andra cykliska talserien.
13. Datorprogram som innefattar programkod som, när den exekveras i en dator, är anordnad att genomföra stegen i sättet enligt något av kraven 1-12.
14. Sätt att bestämma en position, i en första rikt- ning, för en delyta på en yta som är försedd med ett positionskodningsmönster, som kodar koordinater för en första riktning på ytan på basis av en första cyklisk talserie, vilken har egenskapen att positionen i tal- serien för varje första talsekvens med ett förutbestämt antal siffror är entydigt bestämd och vilken är utskriven i kolumner över ytan, varvid olika kolumner börjar i olika positioner i talserien så att positionsförskjut- ningar uppkommer mellan angränsande kolumner, inne- fattande stegen att identifiera ett flertal första talsekvenser från positionskoden på delytan, bestämma varje första talsekvens position i den första cykliska talserien, lO 15 20 25 30 520 211 25 pà basis av dessa positioner bestämma positions- förskjutningarna mellan de angränsande kolumnerna i vilka de första talsekvenserna fràn delytan ingär, k ä n n e t e c k n a t av stegen att utifrån positionsförskjutningarna bestämma en koordinat i den första riktningen för en första kolumngrupp, som nämnda delyta åtminstone delvis överlappar, vilken första kolumngrupp är en av ett flertal kolumngrupper i den första riktningen, vilka var och en innefattar ett förutbestämt flertal kolumner och har en kolumns över- lappning med angränsande kolumngrupper.
15. Sätt enligt krav 14, varvid steget att bestämma nämnda koordinat för den första kolumngruppen innefattar att bestämma vilken av förskjutningarna som motsvarar den minst signifikanta siffran i ett positionstal i blandad bas, som anger den första kolumngruppens koordinat i den första riktningen.
16. Sätt enligt krav 15, varvid den förskjutning som motsvarar den minst signifikanta siffran i positionstalet bestäms till att vara den minsta av förskjutningarna.
17. Sätt enligt nàgot av krav 14-16, vidare inne- fattande steget att bestämma en position för nämnda del- yta i en andra riktning pà ytan, varvid positionskod- ningsmönstret för kodningen i den andra riktningen vidare är baserat pà en andra cyklisk talserie, vilken har egen- skapen att positionen i talserien för varje andra tal- sekvens med ett andra förutbestämt antal siffror är entydigt bestämd och vilken är utskriven i ett flertal rader pà ytan, varvid olika rader har olika start- positioner genom att de börjar i olika positioner i talserien, innefattande stegen att identifiera ett fler- tal andra talsekvenser från positionskoden pà delytan, bestämma varje andra talsekvens position i den andra lO 15 20 25 30 520 211 26 cykliska talserien; att utifrån delytans position i den första riktningen beräkna startpositionerna för var och en av de andra cykliska talserier i vilka de andra tal- sekvenserna på delytan ingår och att utifrån start- positionerna bestämma en position i den andra riktningen för en radgrupp, som delytan åtminstone delvis över- lappar, vilken radgrupp är en av ett flertal icke- överlappande radgrupper i den andra riktningen, vilka var och ett innefattar ett förutbestämt flertal andra rader.
18. Sätt enligt krav 17, varvid steget att bestämma det radgruppens position i den andra riktningen inne- fattar att bestämma vilken av startpositionerna som motsvarar den minst signifikanta siffran i ett positions- tal i blandad bas, som anger radgruppens position i den andra riktningen.
19. Sätt enligt krav 18, varvid den startposition som motsvarar den minst signifikanta siffran i positions- talet för det andra kodfönstret bestäms till att vara den minst signifikanta startpositionen.
20. Sätt enligt något av krav 14-19, varvid posi- tionskodningsmönstret innefattar ett raster, som sträcker sig över ytan, varvid varje skärningspunkt mellan raster- linjer i nämnda raster är tillordnad ett tal fràn den första cykliska talserien och ett tal fràn den andra cykliska talserien, vilka tal är kodade med en grafisk markering, varvid stegen att identifiera ett flertal första talsekvenser och identifiera ett flertal andra talsekvenser innefattar att avkoda de markeringar som finns inom nämnda delyta och att separera de sålunda erhållna talen i nämnda flertal första talsekvenser och nämnda andra talsekvenser.
21. Datorprogramprodukt som är avläsbar för en dator och innefattar ett datorprogram med instruktioner för att lO 15 520 211 27 bringa datorn att genomföra ett sätt enligt något av krav l4-20.
22. Anordning för positionsbestämning, innefattande en sensor (14) för åstadkommande av en bild av en delyta av en yta, som är försedd med ett positionskodnings- mönster, och bildbehandlingsorgan (16), som är anordnade att utifrån den delmängd av positionskodningsmönstret som finns i bilden av delytan beräkna en position för delytan i enlighet med sättet enligt något av krav 14-20.
23. Anordning enligt krav 22, vilken anordning är handhållen.
24. Anordning enligt något av krav 22 eller 23, var- för trådlös överföring av vid anordningen har organ (19) positionsinformation.
SE0200079A 2002-01-14 2002-01-14 Positionsbestämning SE520211C2 (sv)

Priority Applications (1)

Application Number Priority Date Filing Date Title
SE0200079A SE520211C2 (sv) 2002-01-14 2002-01-14 Positionsbestämning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE0200079A SE520211C2 (sv) 2002-01-14 2002-01-14 Positionsbestämning

Publications (3)

Publication Number Publication Date
SE0200079L SE0200079L (sv) 2002-01-14
SE0200079D0 SE0200079D0 (sv) 2002-01-14
SE520211C2 true SE520211C2 (sv) 2003-06-10

Family

ID=20286641

Family Applications (1)

Application Number Title Priority Date Filing Date
SE0200079A SE520211C2 (sv) 2002-01-14 2002-01-14 Positionsbestämning

Country Status (1)

Country Link
SE (1) SE520211C2 (sv)

Also Published As

Publication number Publication date
SE0200079L (sv) 2002-01-14
SE0200079D0 (sv) 2002-01-14

Similar Documents

Publication Publication Date Title
SE517445C2 (sv) Positionsbestämning på en yta försedd med ett positionskodningsmönster
SE516310C2 (sv) Produkt med två kodningsmönster, innefattande rasterpunkter; samt förfarande, datorprogram och anordning för att avläsa kodningsmönstren
SE516109C2 (sv) Förfarande, system och datorprogram för dokumenthantering med hjälp av positionskodningsmönster
US6689966B2 (en) System and method for determining positional information
SE516522C2 (sv) Positionsbestämning
US6586688B2 (en) Information-related devices and methods
AU752626B2 (en) Recording of information
EP1579379B1 (en) Information code including redundant information providing copy protection
AU3994400A (en) Calendar
AU5263500A (en) Recording of information
EP1532577A1 (en) Position-coding pattern
JP3949120B2 (ja) 空間型情報入力装置及び方法、このためのソフトキーマッピング方法及びそれによる仮想キーボード
JP4455055B2 (ja) 位置コードを達成し且つ位置コードをデコーディングするための方法
SE523700C2 (sv) Förfarande, anordning och minnesmedium för positionsbestämning
EP1269408A1 (en) Apparatus and method for determining spatial orientation
JP4898920B2 (ja) 表面上に絶対位置コードパターンを有する製造物及びその絶対位置コードパターンの形成方法
SE520211C2 (sv) Positionsbestämning
SE519820C2 (sv) System innefattande visitkort med positionskodningsmönster
EP1269396A1 (en) Apparatus and methods relating to images
KR100904171B1 (ko) 표면상 객체 인식용 코드 패턴을 갖는 제조물과 그 객체인식용 코드 패턴의 형성 방법
SE519458C2 (sv) Kalender
JP2007004751A (ja) マーク用紙とマーク出力プログラム

Legal Events

Date Code Title Description
NUG Patent has lapsed