KR100993033B1 - 엔터테인먼트 시스템 - Google Patents

엔터테인먼트 시스템 Download PDF

Info

Publication number
KR100993033B1
KR100993033B1 KR1020087018327A KR20087018327A KR100993033B1 KR 100993033 B1 KR100993033 B1 KR 100993033B1 KR 1020087018327 A KR1020087018327 A KR 1020087018327A KR 20087018327 A KR20087018327 A KR 20087018327A KR 100993033 B1 KR100993033 B1 KR 100993033B1
Authority
KR
South Korea
Prior art keywords
led
image
controller
game
processing
Prior art date
Application number
KR1020087018327A
Other languages
English (en)
Other versions
KR20080080665A (ko
Inventor
테이유 고토
카츠 사이토
아키오 오바
히로유키 세가와
Original Assignee
소니 컴퓨터 엔터테인먼트 인코포레이티드
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 소니 컴퓨터 엔터테인먼트 인코포레이티드 filed Critical 소니 컴퓨터 엔터테인먼트 인코포레이티드
Publication of KR20080080665A publication Critical patent/KR20080080665A/ko
Application granted granted Critical
Publication of KR100993033B1 publication Critical patent/KR100993033B1/ko

Links

Images

Classifications

    • A63F13/06
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/23Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/24Constructional details thereof, e.g. game controllers with detachable joystick handles
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • 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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/25Output arrangements for video game devices
    • A63F13/26Output arrangements for video game devices having at least one additional display device, e.g. on the game controller or outside a game booth
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/31Communication aspects specific to video games, e.g. between several handheld game devices at close range
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1006Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals having additional degrees of freedom
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1043Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being characterized by constructional details
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1087Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
    • A63F2300/1093Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera using visible light
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/30Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device
    • A63F2300/301Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device using an additional display connected to the game console, e.g. on the controller
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/402Communication between platforms, i.e. physical link to protocol
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6045Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6607Methods for processing data by generating or executing the game program for rendering three dimensional images for animating game characters, e.g. skeleton kinematics
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6623Methods for processing data by generating or executing the game program for rendering three dimensional images for animating a group of characters

Abstract

컨트롤러(20)의 LED를 이용한 게임시스템을 제공한다. 본 발명의 게임시스템(1)에서는 촬상장치(2)가 컨트롤러(20)를 촬상한다. 컨트롤러(20)는 게임을 진행시키는 조작입력을 행하기 위한 복수의 입력부와, 실행되는 게임 애플리케이션에 있어서 컨트롤러(20)에 설정되는 컨트롤러 번호를 표현하기 위한 LED를 복수개 갖는다. 게임장치(10)는 컨트롤러(20)에서의 조작입력을 접수하여 게임 애플리케이션의 처리에 반영하는 동시에, 촬상장치(2)로부터 촬상화상을 취득해 촬상화상에서의 LED의 위치로부터 컨트롤러(20)의 촬상화상 중의 위치를 취득하여, 취득한 위치정보를 게임 애플리케이션의 처리에 반영함으로써 조작입력과 취득한 위치정보에 근거한 애플리케이션의 처리결과를 나타내는 화상신호를 생성한다.
게임시스템, 컨트롤러, 촬상장치, 게임장치

Description

엔터테인먼트 시스템{ENTERTAINMENT SYSTEM}
본 발명은 실공간상에 존재하는 오브젝트를 인식하는 기술에 관한 것이다.
최근에 2차원 코드를 카메라로 촬상해서 코드 데이터를 인식하고, 그 코드 데이터에 대응된 소정의 처리를 실행시키는 기술이 제안되어 있다. 1차원 바코드와 비교하면 2차원 코드 쪽이 코드화할 수 있는 정보량이 많기 때문에 현재는 다양한 종류의 2차원 코드가 실용화되어 있다. 이러한 상황에서 종래 2차원 코드의 화상인식에 관한 기술을 제안하는 것이 있다(예컨대 특허문헌 1 참조).
실공간상의 오브젝트의 3차원적인 위치나 자세 등을 취득하기 위해서 자기(磁氣)방식, 초음파방식 또는 광학방식을 이용한 다양한 계측시스템이 존재한다. 자기방식에 의한 계측시스템은 환경에 존재하는 전자기기나 지자기 등의 영향을 받기 쉽고, 또 초음파방식에 의한 계측시스템은 환경의 기압이나 온도 등의 영향을 받기 쉽다. 한편 광학방식에 의한 계측시스템은 카메라로 촬상한 촬영화상을 이용하기 때문에 주변의 자계나 기압, 온도 등의 영향을 받을 일이 없다. 광학방식을 이용한 계측시스템으로서 오브젝트에 마련한 복수의 LED를 각각 고유하게 정해지는 점멸(點滅) 패턴으로 점멸시켜서, 2차원 이미지 센서에 의한 촬영화상을 이용해 3차원 위치나 자세 등을 인식하는 기술이 제안되어 있다(예컨대 특허문헌 2 참조). 특허문헌 2에서는 마커(marker)로서 기능하는 LED가 LED마다 고유하게 식별 가능한 식별정보를 갖고 있다.
특허문헌 1: 일본국 공개특허 제2000-82108호 공보
특허문헌 2: 일본국 공개특허 제2003-254716호 공보
최근의 기술진보에 수반하여 게임시스템의 하드웨어 스펙이 비약적으로 향상하고 있다. 이에 따라 게임 애플리케이션도 다양화되어 최근에는 카메라와 게임장치를 접속해 사용자가 카메라 앞에서 몸을 움직이면 게임장치가 광학적으로 사용자의 움직임을 인식하여 게임에의 입력으로 이용하는 게임시스템도 실현되고 있다. 이러한 게임 환경하에 본 발명자는 게임장치와 접속한 카메라를 효과적으로 이용함으로써 종래에 없는 게임시스템 및 컨트롤러를 생각해 내기에 이르렀다. 또한 실공간에서의 오브젝트를 카메라로 촬상해 촬상화상으로부터 오브젝트에 관해 가공처리를 실시한 정보를 화상표시장치에 표시할 수 있다면, 게임시스템뿐만 아니라 다른 환경, 예컨대 교육 현장이나 비즈니스의 현장 등의 엔터테인먼트 시스템에 있어서도 유효한 애플리케이션을 만들어 낼 수 있을 것으로 생각된다.
그래서 본 발명은 신규의 애플리케이션 처리기능을 갖는 엔터테인먼트 시스템 및 상기 엔터테인먼트 시스템에서 이용되는 조작입력장치를 제공하는 것을 목적으로 한다.
상기 과제를 해결하기 위해서 본 발명의 어떤 형태의 엔터테인먼트 시스템은, 사용자가 조작입력을 행하기 위한 조작입력장치와, 상기 조작입력장치에 있어서의 조작입력을 바탕으로 애플리케이션을 처리해서 애플리케이션의 처리결과를 나타내는 화상신호를 생성하는 처리장치와, 상기 조작입력장치를 촬상하는 촬상장치와, 상기 처리장치에서 생성된 화상신호를 출력하는 화상표시장치를 구비한다.
이 형태의 엔터테인먼트 시스템에 있어서 상기 조작입력장치는, 사용자가 애플리케이션을 진행시키는 조작입력을 행하기 위한 복수의 입력부와, 실행되는 애플리케이션에 있어서 상기 조작입력장치에 설정되는 번호를 표현하기 위한 발광소자를 복수개 가지며, 상기 처리장치는 상기 조작입력장치에서의 조작입력을 접수하여 애플리케이션의 처리에 반영하는 동시에, 상기 촬상장치로부터 촬상화상을 취득해 촬상화상에서의 상기 발광소자의 위치로부터 상기 조작입력장치의 촬상화상 중의 위치를 취득하여, 취득한 위치정보를 애플리케이션의 처리에 반영함으로써 조작입력과 취득한 위치정보에 근거한 애플리케이션의 처리결과를 나타내는 화상신호를 생성하는 기능을 갖는다.
본 발명의 다른 형태는 사용자에 의한 조작입력을 게임장치에 전송하는 게임 컨트롤러에 관한다. 이 형태의 게임 컨트롤러는 사용자에 의해 쥐어지는 손잡이부와, 사용자에 의해 상기 손잡이부가 쥐어진 상태로 사용자에게 조작입력을 행하도록 케이스 상면에 마련된 복수의 입력부와, 상기 입력부를 통해서 입력된 조작입력을 게임장치에 전송하는 전송부와, 케이스 배면(背面)에 마련된 복수의 발광소자를 구비한다.
또한 이상의 구성요소의 임의의 조합, 본 발명의 표현을 방법, 장치, 시스템, 기록매체, 컴퓨터 프로그램 등의 사이에서 변환한 것 역시 본 발명의 형태로서 유효하다.
도 1은 본 발명의 실시예에 따른 게임시스템의 사용환경을 나타내는 도이다.
도 2는 컨트롤러의 외관 구성을 나타내는 도이다.
도 3은 컨트롤러의 배면측의 외관 구성을 나타내는 도이다.
도 4는 컨트롤러의 내부 구성을 나타내는 도이다.
도 5는 게임장치의 구성을 나타내는 도이다.
도 6은 화상처리부의 구성을 나타내는 도이다.
도 7의 (a)는 현재 프레임 화상을 나타내는 도이며, (b)는 현재 프레임 화상과 이전 프레임 화상의 차분(差分) 화상을 나타내는 도이다.
도 8의 (a)는 현재 프레임 화상의 2값화 화상을 나타내는 도이며, (b)는 논리곱 화상을 나타내는 도이다.
도 9는 LED화상후보의 검출처리의 처리순서를 나타내는 흐름도이다.
도 10은 LED추출처리의 처리순서를 나타내는 흐름도이다.
도 11은 도 10의 S122에 나타내는 제2LED 검출처리의 처리순서를 나타내는 흐름도이다.
도 12는 도 10의 S124에 나타내는 제3LED 검출처리의 처리순서를 나타내는 흐름도이다.
도 13은 도 10의 S126에 나타내는 제4 LED 검출처리의 처리순서를 나타내는 흐름도이다.
도 14는 컨트롤러에 대응하는 가상 오브젝트가 게임 화면 내에서 원활한 추종 동작을 실현하기 위한 알고리즘을 설명하기 위한 도이다.
도 1은 본 발명의 실시예에 따른 게임시스템의 사용 환경을 나타낸다. 게임시스템(1)은 촬상장치(2), 화상표시장치(3), 음성출력장치(4), 게임장치(10) 및 컨트롤러(20)를 구비한다. 촬상장치(2), 화상표시장치(3), 음성출력장치(4) 및 컨트롤러(20)는 게임장치(10)에 접속된다.
컨트롤러(20)는 사용자가 조작입력을 행하기 위한 조작입력장치이고, 또한 게임장치(10)는 컨트롤러(20)에서의 조작입력을 바탕으로 게임 애플리케이션을 처리하여 게임 애플리케이션의 처리결과를 나타내는 화상신호를 생성하는 처리장치이다. 또한 본 실시예에 나타내는 기술은 게임 애플리케이션에 한정되지 않고, 다른 종류의 애플리케이션을 실행하는 처리장치를 구비한 엔터테인먼트 시스템에서도 실현할 수 있다. 이하에서는 엔터테인먼트 시스템을 대표하여 게임 애플리케이션을 실행하는 게임시스템(1)에 대해서 설명한다.
촬상장치(2)는 CCD 촬상소자 또는 CMOS 촬상소자 등으로 구성되는 비디오 카메라로서, 실공간을 소정의 주기로 촬상하여 주기마다 프레임 화상을 생성한다. 예컨대 촬상장치(2)의 촬상주기는 30장/초로서, 화상표시장치(3)의 프레임율(frame rate)과 일치시켜도 된다. 촬상장치(2)는 USB(Universal Serial Bus) 혹은 그 밖의 인터페이스를 통해서 게임장치(10)와 접속한다.
화상표시장치(3)는 화상신호를 출력하는 디스플레이로서, 게임장치(10)에서 생성된 화상신호를 받아 게임 화면을 표시한다. 음성출력장치(4)는 음성을 출력하는 스피커로서, 게임장치(10)에서 생성된 음성신호를 받아 게임 음성을 출력한다. 화상표시장치(3) 및 음성출력장치(4)는 게임시스템(1)에 있어서의 출력장치를 구성한다.
게임장치(10)와 화상표시장치(3)는 유선에 의해 접속되어도 되고 또 무선에 의해 접속되어도 된다. 게임장치(10)와 화상표시장치(3)는 AV케이블에 의해 접속되어도 된다. 또한 게임장치(10)와 화상표시장치(3)의 사이에는 네트워크(LAN) 케이블이나 무선 랜 등으로 구축한 홈 네트워크가 구축되어도 된다.
컨트롤러(20)는 사용자에 의한 조작입력을 게임장치(10)에 전송하는 기능을 갖는데, 본 실시예에서는 게임장치(10)와의 사이에서 무선통신 가능한 무선 컨트롤러로서 구성된다. 컨트롤러(20)와 게임장치(10)는 블루투스(Bluetooth)(등록상표) 프로토콜을 이용하여 무선접속을 확립해도 된다. 게임장치(10)는 복수의 컨트롤러(20)와의 무선접속을 가능하게 하는데, 다시 말하면 게임시스템(1)에서는 게임장치(10)와 컨트롤러(20)의 1 대 N(one-to-N) 접속을 실현할 수 있다. 게임장치(10)는 마스터(master)로서 기능하고, 컨트롤러(20)는 슬레이브(slave)로서 기능한다. 또한 컨트롤러(20)는 무선 컨트롤러에 한정되지 않고, 게임장치(10)와 케이블을 통해서 접속되는 유선 컨트롤러여도 된다.
컨트롤러(20)는 도시하지 않은 배터리에 의해 구동되며, 게임을 진행시키는 조작입력을 행하기 위한 복수의 버튼이나 키를 가짐으로써 구성된다. 사용자가 컨트롤러(20)의 버튼이나 키를 조작하면, 그 조작입력이 무선에 의해 게임장치(10)에 송신된다. 게임장치(10)는 컨트롤러(20)로부터 게임 애플리케이션에 관한 조작입력을 수신하고, 조작입력에 따라 게임 진행을 제어하여 게임 화상신호 및 게임 음성신호를 생성한다. 생성된 게임 화상신호 및 게임 음성신호는 각각 화상표시장치(3) 및 음성출력장치(4)에 의해 출력된다. 또한 게임장치(10)는 게임 애플리케이션의 진행상황에 따라 컨트롤러(20)를 진동시키는 진동 제어신호를 컨트롤러(20)에 송신하는 기능도 갖는다. 컨트롤러(20)는 진동자를 가지며, 진동 제어신호를 수신하면 진동자를 진동시킨다.
본 실시예의 게임시스템(1)에서 컨트롤러(20)는 복수의 발광소자를 가짐으로써 구성된다. 복수의 발광소자는 각각 동색(同色)의 LED로서, 게임 애플리케이션으로 설정되는 컨트롤러 번호를 표현하는 지시자로서의 역할을 갖는다. 게임 애플리케이션에서의 컨트롤러 번호는 예컨대 게임 개시시에 사용자가 게임 캐릭터를 선택할 때 등에 이용되기 때문에, 사용자에게 어떠한 수단으로든 컨트롤러 번호를 통지할 필요가 있다. 그 때문에 컨트롤러(20)에서는 복수의 LED 중 예컨대 첫 번째의 LED가 점등하고 있으면 컨트롤러 번호가 1이고, 또 두 번째의 LED가 점등하고 있으면 컨트롤러 번호가 2라고 함으로써 사용자에게 컨트롤러 번호를 알려준다. 또한 복수의 LED의 조합에 의해 컨트롤러 번호를 표현하는 것도 가능하다.
컨트롤러(20)가 유선 컨트롤러일 경우에는 컨트롤러(20)로부터 연결되어 있는 케이블 커넥터를 게임장치(10)의 포트에 꽂은 위치에서 컨트롤러 번호를 결정하는 것도 가능하다. 그러나 복수의 포트를 구비한 멀티포트(multiport) 장치를 게임장치(10)의 외부에 장착해서 사용하는 경우에는, 사용자는 바로 컨트롤러 번호를 알 수 없기 때문에 복수의 LED를 이용해서 사용자에게 컨트롤러 번호를 통지하는 것이 바람직하다.
게임시스템(1)에 있어서는 컨트롤러(20)의 LED를 컨트롤러 번호의 지시자로서 뿐만 아니라 게임 애플리케이션의 진행에 영향을 주는 게임 입력으로서도 이용한다. 이 경우, LED의 제어는 지시자로서 점등하는 것이 아니라 게임 애플리케이션에의 입력으로서의 점등으로 바뀌게 된다. 촬상장치(2)는 컨트롤러(20)의 LED를 촬상하여 프레임 화상을 생성해서 게임장치(10)에 공급한다. 게임장치(10)는 프레임 화상을 취득해 프레임 화상에서의 LED화상의 위치로부터 컨트롤러(20)의 프레임 화상 중의 위치나 자세를 추정하여 취득하는데, 취득한 위치정보 및/또는 자세정보를 게임 애플리케이션의 처리에 반영한다. 즉 본 실시예의 게임장치(10)는 컨트롤러(20)에서 입력된 조작입력뿐만 아니라, 취득한 컨트롤러(20)의 위치정보나 자세정보도 이용하여 게임 애플리케이션을 처리함으로써 그 처리결과를 나타내는 화상신호를 생성하는 기능을 갖는다.
도 2는 컨트롤러의 외관 구성을 나타낸다. 컨트롤러(20)에는 방향키(21), 아날로그 스틱(27) 및 4종의 조작버튼(26)이 마련되어 있다. 방향키(21), 아날로그 스틱(27), 조작버튼(26)은 케이스 상면(30)에 마련된 입력부이다. 4종의 버튼(22∼25)에는 각각을 구별하기 위해 다른 색으로 도형이 표시되어 있다. 즉, ○버튼(22)에는 적색의 동그라미, ×버튼(23)에는 청색의 가새표, □버튼(24)에는 보라색의 사각형, △버튼(25)에는 녹색의 삼각형이 표시되어 있다. 컨트롤러(20)의 케이스 배면(29)에는 복수의 LED가 마련되어 있다.
사용자는 왼손으로 좌측 손잡이부(28a)를 잡고, 오른손으로 우측 손잡이부(28b)를 잡음으로써 컨트롤러(20)를 조작한다. 방향키(21), 아날로그 스틱(27), 조작버튼(26)은 사용자가 좌측 손잡이부(28a), 우측 손잡이부(28b)를 잡은 상태로 조작이 가능하도록 케이스 상면(30) 위에 마련된다.
케이스 상면(30)에는 LED부착 버튼(31)도 마련된다. LED부착 버튼(31)은 예컨대 화상표시장치(3)에 메뉴화면을 표시시키기 위한 버튼으로서 이용된다. 또한 LED의 발광상태에 의해 사용자에 대한 메일의 착신 알림이나, 컨트롤러(20)의 배터리 충전상태 등을 나타내는 기능도 갖는다. 예컨대 충전 중에는 적색, 충전이 종료하면 녹색으로 점등하고, 충전 잔존량이 얼마 남지 않은 때에는 적색을 점멸시키도록 LED를 점등시킨다.
사용자는 화상표시장치(3)에 표시되는 게임 화면을 보면서 게임을 하기 때문에 화상표시장치(3)는 화살표 A로 나타내는 컨트롤러(20)의 전방에 존재하고 있다. 그 때문에 통상은 화상표시장치(3)와 LED가 배치된 케이스 배면(29)이 서로 마주보게 된다. 본 실시예에서 촬상장치(20)는 게임 애플리케이션의 실행 중에 LED를 촬상할 필요가 있기 때문에, 그 촬상 범위가 화상표시장치(3)와 같은 방향을 향하도록 배치되어 컨트롤러(20)의 케이스 배면(29)과 마주 보는 것이 바람직하다. 일반적으로 사용자는 화상표시장치(3)의 정면에서 게임을 하는 일이 많기 때문에, 촬상장치(2)는 그 광축(光軸)의 방향이 화상표시장치(3)의 정면방향과 일치하도록 배치된다. 구체적으로 촬상장치(2)는 화상표시장치(3)의 근방에서 화상표시장치(3)의 표시화면을 사용자가 인식할 수 있는 위치가 촬상 범위에 포함되도록 배치되는 것 이 바람직하다. 이에 따라 촬상장치(2)는 사용자의 신체 및 컨트롤러(20)를 촬상할 수 있다.
도 3은 컨트롤러의 배면측의 외관 구성을 나타낸다. 도 3에서는 컨트롤러(20)의 케이스 상면(30)에서의 방향키(21)나 조작버튼(26) 등의 도시를 생략하고 있다. 케이스 배면(29)에는 LED배치영역(42)이 마련되고, LED배치영역(42) 내에 제1LED(40a), 제2LED(40b), 제3LED(40c) 및 제4LED(40d)가 배치된다. 이하, 제1LED(40a), 제2LED(40b), 제3LED(40c) 및 제4LED(40d)를 총칭하는 경우에는 'LED(40)'로 표기한다. LED배치영역(42)은 케이스 배면(29)에 있어서의 중앙영역에 형성된다. LED배치영역(42)의 중앙부에는 USB커넥터(46)가 마련된다. USB커넥터(46)에는 게임장치(10)로부터 연결되어 있는 USB케이블이 접속되어 있어 컨트롤러(20)의 충전처리를 행할 수 있다. 또한 USB케이블이 접속되면 컨트롤러(20)를 유선 컨트롤러로서 이용하는 것도 가능하다.
케이스 배면(29)측에는 조작버튼(48a, 48b, 48c, 48d)이 LED배치영역(42)을 끼고 좌우에 마련된다. 조작버튼(48a, 48b, 48c, 48d)은 사용자가 좌측 손잡이부(28a), 우측 손잡이부(28b)를 잡은 상태에서도 검지 손가락 끝으로 조작 가능한 위치에 마련된다. 이에 따라 조작버튼(48a, 48b, 48c, 48d)의 조작시에 LED(40)는 검지 손가락에 의해 가려지지 않는다.
LED(40)는 컨트롤러 번호를 표현하는 지시자로서 이용되는데, 컨트롤러(20)를 사용하고 있는 사용자 입장에서는 한번 확인할 수 있으면 충분하고, 항상 보이는 케이스 상면(30)에 배치하는 것은 바람직하지 않다. 한편 다른 사용자가 존재할 경우에는 LED(40)를 케이스 배면(29)에 배치함으로써 다른 사용자가 쉽게 볼 수 있다는 이점이 있다. 또한 케이스 상면(30)에는 LED부착 버튼(31)이 존재하기 때문에 LED(40)를 배치하면 사용자가 잘 구별하지 못하게 된다. 그 때문에 컨트롤러(20)는 LED(40)를 케이스 배면(29)에 배치하여 구성한다.
촬상장치(2)는 각 화소에 있어서의 RGB의 휘도값을 취득한다. 발광한 LED(40)를 정확하게 검출하기 위해서는 LED(40)와 LED(40) 주변 영역과의 대비(contrast)가 큰 것이 바람직하다. 그 때문에 LED배치영역(42)은 그 인접하는 케이스 색보다도 명도가 낮은 색을 갖게 되는데, 예컨대 흑색의 배색을 하게 된다. LED배치영역(42)은 흑색의 반투명판으로서 구성되고, LED(40)는 그 배후 즉 케이스 내부측에 마련된다. 이에 따라 LED(40)는 점등하고 있지 않으면 촬상장치(2)에서는 보이지 않게 되어 점등했을 때에만 촬상된다. 흑색 반투명판은 빛을 확산해서 LED(40)의 협(狹)지향성을 광(廣)지향성으로 바꾸는 역할도 한다. LED(40)를 LED배치영역(42)에 마련함으로써 발광한 LED(40)와의 대비를 높일 수 있어, 이후의 화상처리에서 프레임 화상으로부터 LED화상을 효과적으로 추출하는 것이 가능해진다.
제1LED(40a), 제2LED(40b), 제3LED(40c) 및 제4LED(40d)는 소정의 2차원 패턴으로 배치된다. 예컨대 제1LED(40a), 제2LED(40b), 제3LED(40c) 및 제4LED(40d)는 직사각형의 정점을 구성하는 위치에 배치된다. 게임장치(10)는 이 위치 관계를 미리 파악하고 있어 LED화상의 추출처리에 이용한다. 또한 각 LED(40)의 근방에는 숫자가 각인 또는 인쇄되어 있어서, 사용자는 점등한 LED(40) 근방의 숫자를 보고 컨트롤러 번호를 알 수 있다.
도 4는 컨트롤러의 내부 구성을 나타낸다. 컨트롤러(20)는 무선통신 모듈(58), 처리부(60), LED(40) 및 진동자(44)를 구비한다. 무선통신 모듈(58)은 게임장치(10)의 무선통신 모듈과의 사이에서 데이터를 송수신하는 기능을 갖는다. 처리부(60)는 컨트롤러(20)에서의 소기(所期)의 처리를 실행한다.
처리부(60)는 메인제어부(50), 입력접수부(52), PWM제어부(54) 및 구동부(56)를 갖는다. 메인제어부(50)는 무선통신 모듈(58)과의 사이에서 필요한 데이터의 송수신을 행한다.
입력접수부(52)는 방향키(21), 조작버튼(26), 아날로그 스틱(27) 등의 입력부로부터의 입력정보를 접수하여 메인제어부(50)에 보낸다. 메인제어부(50)는 수취한 입력정보를 무선통신 모듈(58)에 공급하고, 무선통신 모듈(58)은 소정의 타이밍에 게임장치(10)로 송신한다. 또한 무선통신 모듈(58)은 게임장치(10)로부터 진동 제어신호를 수취하면 메인제어부(50)에 공급하고, 메인제어부(50)는 진동 제어신호를 바탕으로 진동자(44)를 진동시키는 구동부(56)를 동작시킨다. 구동부(56)는 진동자(44)를 구동하기 위한 스위치로서 구성되어도 되고, 또 공급전압의 듀티비(duty ratio)를 가변으로 하는 PWM제어부로서 구성되어도 된다.
본 실시예에 있어서 PWM제어부(54)는 제1PWM제어부(54a), 제2PWM제어부(54b), 제3PWM제어부(54c) 및 제4PWM제어부(54d)로 구성된다. 제1PWM제어부(54a), 제2PWM제어부(54b), 제3PWM제어부(54c) 및 제4PWM제어부(54d)는 각각 제1LED(40a), 제2LED(40b), 제3LED(40c) 및 제4LED(40d)의 점등을 제어하기 위해서 마련된다. PWM제어부(54)는 LED(40)에 인가하는 전압을 PWM(펄스폭 변조)에 의해 제어한다. 예컨대 PWM제어부(54)는 수 kHz의 고주파로 인가전압을 PWM 제어함으로써 LED(40)의 휘도를 조정할 수 있다. 또한 PWM제어부(54)는 수 Hz∼100Hz 정도의 저주파로 인가전압을 PWM 제어함으로써 촬상장치(2)에 있어서 LED(40)의 점등의 온/오프를 인식시킬 수 있다.
본 실시예의 게임시스템(1)에 있어서, 우선 게임시스템(1)에 참가를 희망하는 사용자의 컨트롤러(20)가 게임장치(10)와의 사이에서 통신을 확립한다. 이때 컨트롤러(20)의 식별정보, 예컨대 블루투스 어드레스가 게임장치(10)에 전달되고, 이후의 통신은 이 블루투스 어드레스를 바탕으로 행해진다. 또한 통신 프로토콜로서 블루투스를 이용하지 않는 경우에는 MAC어드레스 등의 기기 어드레스가 이용되어도 된다. 접속 확립 후에 사용자는 게임 애플리케이션에 참가할 수 있다.
이때 컨트롤러(20)에는 게임장치(10)로부터 컨트롤러 번호를 지시하는 정보가 송신된다. 메인제어부(50)는 이 번호지시 정보를 바탕으로 하여, 설정된 컨트롤러 번호에 대응하는 LED(40)만을 점등시킨다. 이에 따라 사용자는 자신의 컨트롤러(20)의 컨트롤러 번호를 알 수 있다. 또한 번호지시 정보 대신에 컨트롤러 번호에 대응하는 LED(40)의 점등을 지시하는 제어신호가 게임장치(10)로부터 송신되어도 된다. 이와 같이 메인제어부(50)는 임의의 LED(40)를 점등시킬 수 있다.
본 실시예의 게임시스템(1)에 있어서 게임장치(10)는 모든 LED(40a∼40d)를 점등한 상태로 촬상된 프레임 화상을 바탕으로 컨트롤러(20)의 위치 및 자세를 추정한다. 추정한 위치 및 자세는 실행하는 게임 애플리케이션의 입력으로서 이용된다. 또한 게임장치(10)는 컨트롤러(20)의 방향키(21)나 조작버튼(26) 등의 조작입 력도 접수한다. 이들 입력정보를 바탕으로 게임장치(10)는 게임 애플리케이션의 게임 파라미터를 생성하여 게임을 진행 제어하고, 게임 화상 및 게임 음성의 AV데이터를 생성한다. AV데이터는 화상표시장치(3) 및 음성출력장치(4)에서 출력된다. 사용자는 게임 화면을 보면서 컨트롤러(20)를 실공간상에서 움직이고, 나아가서는 방향키(21)나 조작버튼(26)을 조작 입력해서 게임을 행한다. 이하에 게임장치(10)에 있어서의 처리를 설명한다.
도 5는 게임장치의 구성을 나타낸다. 게임장치(10)는 입력부(100), 화상처리부(102), 위치추정부(104), 점멸지시부(106), 무선통신 모듈(108), 애플리케이션 처리부(110) 및 출력부(112)를 구비한다. 본 실시예에서의 게임장치(10)의 처리기능은 CPU, 메모리, 메모리에 로딩된 프로그램 등에 의해 실현되는데, 여기서는 그들의 연계에 의해 실현되는 구성을 그리고 있다. 프로그램은 게임장치(10)에 내장되어 있어도 되고, 또 기록매체에 격납된 형태로 외부에서 공급되는 것이어도 된다. 따라서 이들 기능 블록이 하드웨어만, 소프트웨어만, 또는 그들 조합에 의해 여러 가지 형태로 실현될 수 있다는 것은 당업자에게 이해되는 부분이다. 도시하는 예에서는 게임장치(10)의 CPU가 화상처리부(102), 위치추정부(104), 점멸지시부(106), 애플리케이션 처리부(110)로서의 기능을 갖는다. 또한 하드웨어의 구성상 게임장치(10)는 복수의 CPU를 가져도 된다. 이러한 경우, 하나의 CPU가 게임 애플리케이션을 실행하는 애플리케이션 처리부(110)로서 기능하고, 다른 CPU가 촬상장치(2)에 의한 촬영화상을 처리하는 화상처리부(102), 위치추정부(104), 점멸지시부(106)로서 기능해도 된다.
무선통신 모듈(108)은 컨트롤러(20)의 무선통신 모듈(58)과의 사이에서 무선통신을 확립한다. 동기(同期) 확립면에 있어서는 무선통신 모듈(108)이 주변의 컨트롤러(20)를 포함하는 단말기기에 대하여 접속 조회, 즉 '문의' 처리를 행한다. 구체적으로는, 무선통신 모듈(108)이 가까이 있는 단말기기에 대하여 IQ(문의)패킷을 브로드캐스트(broadcast)한다. IQ패킷을 수신한 컨트롤러(20)의 무선통신 모듈(58)은 블루투스 어드레스와 블루투스 클록 정보를 포함하는 FHS(Frequency Hop Synchronization)패킷을 게임장치(10)로 회신한다. 이 시점에서의 송수신에는 주파수 호핑 패턴에 관한 동의가 게임장치(10)와 컨트롤러(20)와의 사이에 확립되어 있지 있으므로, 문의 전용으로 정의된 고정 호핑 패턴이 이용된다.
무선통신 모듈(108)은 컨트롤러(20)로부터 FHS패킷을 수취하여 어떠한 컨트롤러(20)가 존재하는지를 파악한 후, 특정한 컨트롤러(20)에 대하여 ID패킷을 송신한다. 이는 무선통신 모듈(108)에 의한 '호출' 처리이다. 특정한 컨트롤러(20)로부터 ID패킷에 대한 응답이 되돌아오면 무선통신 모듈(108)은 FHS패킷을 컨트롤러(20)에 송신하여 자신의 어드레스와 클록을 컨트롤러(20)에 알린다. 이에 따라 게임장치(10)와 컨트롤러(20)는 동일한 호핑 패턴을 공유할 수 있게 된다.
'호출'을 행하면 컨트롤러(20)와 게임장치(10)의 사이에 피코네트(piconet)가 형성되어 '접속' 상태에 들어간다. 피코네트란, 블루투스 단말끼리를 근접시켰을 때에 단말 사이에서 일시적으로 형성되는 네트워크를 의미하며, 최대 8대의 블루투스 단말이 하나의 피코네트에 참가할 수 있다. 접속한 컨트롤러(20)는 무선통신 모듈(108)로부터 슬레이브 식별자, 즉 접속 중인 컨트롤러(20)에 주어지는 3비 트의 어드레스(1∼7)를 배정받게 된다. 이 슬레이브 식별자는 AM_ADDR(엑티브 멤버 어드레스)로 불린다. '접속' 상태가 되면 통신 링크 설정을 위한 제어 패킷이 송수신되고, 이것에 의해 '데이터 전송'이 가능해진다.
접속 상태가 되어 컨트롤러(20)가 게임 애플리케이션에 참가하면, 애플리케이션 처리부(110)는 컨트롤러(20)의 컨트롤러 번호를 할당하여 컨트롤러 번호를 지시하는 번호지시 정보를 생성한다. 무선통신 모듈(108)은 번호지시 정보를 컨트롤러(20)에 송신한다. 컨트롤러(20)는 번호지시 정보를 수신하면 대응하는 LED(40)를 점등시킨다. 또한 무선통신 모듈(108)은 번호지시 정보 대신에 컨트롤러 번호에 대응하는 LED(40)의 점등을 지시하는 제어신호를 컨트롤러(20)에 송신해도 된다.
게임 애플리케이션이 개시되면, 점멸지시부(106)는 컨트롤러(20)에 대하여 소정의 주기로 점멸하도록 점멸 패턴을 지시하는 제어신호를 생성한다. 이 점멸 제어신호는 무선통신 모듈(108)로부터 컨트롤러(20)에 송신된다.
입력부(100)는 USB 인터페이스로서 구성되며, 촬상장치(2)로부터 소정의 촬상주기(예컨대 30프레임/초)로 프레임 화상을 취득한다. 화상처리부(102)는 후술하는 LED추출 알고리즘에 따라 프레임 화상으로부터 LED화상을 추출한다. 위치추정부(104)는 추출된 LED화상으로부터 LED화상의 위치정보를 취득하여 컨트롤러(20)의 위치나 자세를 추정한다. 위치추정부(104)는 LED화상의 위치정보를 취득하기 때문에 위치취득부로서 기능해도 된다. 또한 컨트롤러(20)의 위치는 4개의 LED화상의 중심(重心)위치에 정해져도 된다.
점등하는 4개의 LED(40)의 위치나 자세로부터 추정되는 컨트롤러(20)의 위치 정보 및/또는 자세정보는 게임 애플리케이션의 입력으로서 이용된다. 그 때문에 위치추정부(104)로 추정된 컨트롤러(20)의 위치정보 및 자세정보는 애플리케이션 처리부(110)에 차차 보내져 애플리케이션의 처리에 반영된다. 애플리케이션 처리부(110)에는 사용자가 컨트롤러(20)의 방향키(21) 등을 조작한 입력도 무선통신 모듈(108)을 통해서 송신된다. 애플리케이션 처리부(110)는 컨트롤러(20)의 위치· 자세정보와 컨트롤러(20)에서의 조작입력으로부터 게임을 진행시켜 게임 애플리케이션의 처리결과를 나타내는 화상신호 및 음성신호를 생성한다. 화상신호 및 음성신호는 출력부(112)로부터 각각 화상표시장치(3) 및 음성출력장치(4)에 보내져 출력된다.
도 6은 화상처리부의 구성을 나타낸다. 화상처리부(102)는 프레임 화상취득부(130), 현재 프레임버퍼(132), 이전 프레임버퍼(134), 차분 화상생성부(136), 2값화 화상생성부(138), 논리연산부(140) 및 LED화상추출부(142)를 구비한다.
프레임 화상취득부(130)는 입력부(100)로부터 프레임 화상 데이터를 취득하여 현재 프레임버퍼(132)에 일시적으로 기억시킨다. 이전 프레임버퍼(134)에는 하나 전의 프레임 화상 데이터가 기억되어 있다. 차분 화상생성부(136)는 현재 프레임버퍼(132)에 기억되어 있는 현재 프레임 데이터와, 이전 프레임버퍼(134)에 기억되어 있는 이전 프레임 데이터와의 차분 화상을 생성한다. 프레임 화상 중의 좌표(x, y)에 있어서의 이전 프레임 데이터의 R화소값을 Pr, G화소값을 Pg, B화소값을 Pb로 하고, 현재 프레임 데이터의 R화소값을 Cr, G화소값을 Cg, B화소값을 Cb로 했을 때, 차분 화상함수 F(x, y)는 이하의 수식으로 표현된다.
Figure 112008053554880-pct00001
여기서 Th는 소정의 역치이다. F(x, y)가 0보다 크면 좌표(x, y)의 화소값이 '1'로 부호화되어 표시상 그 화소는 백색이 된다. 한편 F(x, y)가 0 이하이면 화소값이 '0'으로 부호화되어 표시상 그 화소는 흑색이 된다. 이와 같이 차분 화상생성부(136)에서 생성되는 차분 화상은 2값화 처리된 화상이 된다. 차분 화상을 생성함으로써 이전 프레임 화상과 현재 프레임 화상의 사이에 움직임이 없는 오브젝트의 영향을 제거할 수 있다.
2값화 화상생성부(138)는 현재 프레임 데이터를 소정의 역치를 이용해 2값화 처리하여 2값화된 화상을 생성한다. 2값화 화상생성부(138)는 소정의 역치보다 큰 휘도를 유지하는 화소의 화소값을 '1'로 부호화하고, 소정 역치 이하의 휘도를 유지하는 화소의 화소값을 '0'으로 부호화한다. 현재 프레임 화상의 2값화 화상을 생성함으로써 현재 프레임 화상에서 밝은 오브젝트만을 추출할 수 있다.
논리연산부(140)는 차분 화상생성부(136)에서 생성된 차분 화상과, 2값화 화상생성부(138)에서 생성된 2값화 화상을 논리 연산한 논리연산 화상을 생성한다. 상세하게는, 논리연산부(140)는 화소마다 차분 화상의 화소값과 2값화 화상의 화소값과의 논리곱 연산을 행함으로써 논리곱 화상을 생성한다. 이는 차분 화상과 2값화 화상의 대응하는 화소끼리의 화소값을 수학적으로 논리곱 연산함으로써 생성된다.
도 7의 (a)는 현재 프레임 화상을 나타낸다. 현재 프레임 화상에서는 사용자가 컨트롤러(20)를 잡고 게임을 하며, 오른쪽에는 조명이 점등하고 있는 상태가 촬상되어 있다. 이때 컨트롤러(20)의 모든 LED(40)가 점등하고 있다. 또한 모든 LED(40)는 동일한 점등 패턴에 의해 동일한 휘도로 발광하고 있다.
도 7의 (b)는 현재 프레임 화상과 이전 프레임 화상의 차분 화상을 나타낸다. 이전 프레임 화상의 위치로부터 컨트롤러(20)를 움직이면 수학식 (1)에 의해 차분 화상이 생성된다. 이 예에서는 컨트롤러(20)나 컨트롤러(20)와 함께 움직이는 몸의 적어도 일부 영역이 백색화상(화소값이 '1'이 됨)으로 취득된다. 한편 항상 이러한 백색화상이 취득되는 것은 아니고, 도 7의 (b)는 어디까지나 수학식 (1)을 만족했을 때에 생성되는 차분 화상의 일례이다. 이때 조명은 움직이지 않기 때문에 차분 화상에는 포함되지 않는다. 또한 사용자가 컨트롤러(20)를 움직이지 않으면 컨트롤러(20)의 백색화상은 취득되지 않는다.
도 8의 (a)는 현재 프레임 화상의 2값화 화상을 나타낸다. 2값화 화상에서는 도 7의 (a)에서의 고휘도 영역, 즉 발광하고 있는 LED와 조명의 램프가 2값화되어 백색화상으로 변환된다. 다른 노이즈를 방지하기 위해 2값화 처리할 때에 설정하는 역치는 LED의 발광 휘도로부터 소정의 마진값을 뺀 휘도값으로 설정되어 있는 것이 바람직하다.
도 8의 (b)는 논리곱 화상을 나타낸다. 논리곱 화상은 도 7의 (b)에 나타내는 차분 화상과 도 8의 (a)에 나타내는 2값화 화상과의 논리곱 연산을 행한다. 차분 화상 및 2값화 화상에 있어서 백색화소의 화소값은 '1'이며, 흑색화소의 화소값 은 '0'이다. 따라서 양쪽 화상에서 백색화소로서 존재하고 있는 화소만이 논리곱 화상에서 백색화소로서 생성되게 된다.
이와 같이 차분 화상과 2값화 화상의 논리곱을 취함으로써 LED화상을 추출하기 쉬운 논리곱 화상을 생성할 수 있다. 논리곱 화상은 LED화상추출부(142)에 보내진다.
논리곱 화상이 생성되면 이전 프레임버퍼(134)에 보유되어 있는 이전 프레임 데이터는 현재 프레임버퍼(132)에 보유되어 있는 현재 프레임 데이터에 의해 오버랩된다. 이 오버랩 처리는 이전 프레임버퍼(134)가 차분 화상생성부(136)에 읽혀진 직후에 행해져도 된다. 그 후, 현재 프레임버퍼(132)에 보유되어 있는 현재 프레임 데이터는 다음 프레임 데이터에 의해 오버랩되어, 다음 프레임에서의 논리곱 화상의 생성 처리를 실행한다.
LED화상추출부(142)는 논리곱 화상으로부터 LED화상을 추출한다. LED화상을 추출하기 위해서는 우선 LED화상의 후보를 검출한다. 그 다음 임의의 후보를 제1LED(40a)라고 가정하고 그 주변영역을 탐색해 제2LED(40b)가 될 수 있는 LED화상후보가 있는지 조사한다. 제2LED(40b)가 발견되면, 또 제1LED(40a)의 주변영역을 탐색해 제3LED(40c)가 될 수 있는 LED화상후보가 있는지 조사한다. 제3LED(40c)가 발견되면, 그 주변영역을 탐색해 제4LED(40d)가 될 수 있는 LED화상후보가 있는지 조사한다. 이때 LED화상추출부(142)는 복수의 LED(40)에 의해 형성되는 2차원 패턴을 미리 인식하고 있어서, 이 2차원 패턴을 이용해 LED화상의 추출처리를 행한다. 이하에서는 설명의 편의상 컨트롤러(20)의 케이스 배면(29)에 있어서 제1LED(40a), 제2LED(40b), 제3LED(40c), 제4LED(40d)가 정사각형의 정점을 구성하도록 배치되어 있는 경우를 예로 든다.
한편 LED화상추출부(142)는 논리곱 화상을 이용하지 않고 2값화 화상으로부터 LED화상을 추출하는 것도 가능하다. 2값화 화상에는 LED화상 이외의 노이즈도 포함되게 되는데, 예컨대 차분 화상에 있어서 LED화상을 취득할 수 없는 경우에는 2값화 화상을 이용함으로써 LED화상의 위치 및 자세를 검출할 수 있다. 이하에 나타내는 처리순서는 논리곱 화상 및 2값화 화상 중 어느 것을 이용해도 실행할 수 있지만, 논리곱 화상에는 LED화상 이외의 노이즈 성분이 적기 때문에 논리곱 화상을 이용하는 편이 처리 속도는 빠르다.
도 9는 LED화상후보의 검출처리의 처리순서를 나타내는 흐름도이다. LED화상추출부(142)는 논리곱 화상에 있어서 백색화소(화소값이 '1'로 되어 있는 화소)가 연속해서 존재하는 영역을 하나의 연결영역으로서 취득한다(S100). 그 다음 LED화상추출부(142)는 백색화소 연결영역의 가장자리 부분을 추출하여 단변(短邊) 및 장변(長邊)을 결정한다(S102).
LED화상추출부(142)는 단변이 소정 화소수(Ma) 이상의 화소로 구성되어 있는지 여부를 판정한다(S104). 단변이 화소수(Ma)보다 적은 화소로 구성되어 있는 경우(S104의 N), LED화상추출부(142)는 LED화상이 아니라고 판단하여 이 백색화소 연결영역의 처리를 종료한다. 단변이 화소수(Ma) 이상의 화소로 구성되어 있는 경우(S104의 Y), LED화상추출부(142)는 장변이 소정 화소수(Mb) 이하의 화소로 구성되어 있는지 여부를 판정한다(S106). 장변이 화소수(Mb)보다 많은 화소로 구성되어 있는 경우(S106의 N), LED화상추출부(142)는 LED화상이 아니라고 판단하여 이 백색화소 연결영역의 처리를 종료한다. 장변이 화소수(Mb) 이하의 화소로 구성되어 있는 경우(S106의 Y), LED화상추출부(142)는 LED화상의 후보라고 판단하여 백색화소 연결영역을 구성하는 화소수를 취득한다(S108). 이 LED화상후보 검출처리는 모든 백색화소 연결영역에 대하여 반복된다. 이로써 논리곱 화상에 포함되는 LED화상후보를 검출할 수 있다. 또한 LED화상후보의 좌표는 연결영역의 중심(重心)에 설정한다.
도 10은 LED추출처리의 처리순서를 나타내는 흐름도이다. LED화상추출부(142)는 검출된 LED화상후보 중 임의의 LED화상후보를 제1LED(40a)로 가정한다(S120). 그 다음 제1LED(40a)에 대하여 제2LED(40b)가 될 수 있는 조건을 만족하는 LED화상후보가 존재하는지 여부를 판정한다(S122). 제2LED(40b)가 되는 LED화상후보가 존재하면(S122의 Y), 제1LED(40a) 및 제2LED(40b)에 대하여 제3LED(40c)가 될 수 있는 조건을 만족하는 LED화상후보가 존재하는지 여부를 판정한다(S124). 제3LED(40c)가 되는 LED화상후보가 존재하면(S124의 Y), 제1LED(40a), 제2LED(40b) 및 제3LED(40c)에 대하여 제4LED(40d)가 될 수 있는 조건을 만족하는 LED화상후보가 존재하는지 여부를 판정한다(S126). 제4LED(40d)가 되는 LED화상후보가 존재하면(S126의 Y), 컨트롤러(20)의 제1LED(40a)∼제4LED(40d)를 추출한 것이 된다. 또한 제2LED화상후보가 존재하지 않는 경우(S122의 N), 제3LED화상후보가 존재하지 않는 경우(S124의 N), 제4LED화상후보가 존재하지 않는 경우(S126의 N)에는, 다른 LED화상후보를 제1LED(40a)로 가정하여 도 8의 처리를 재실행한다.
LED추출처리에 있어서는, 처리 부하를 경감하기 위해서 컨트롤러(20)의 자세가 소정 각도 이상 기울어져 있지 않을 것을 처리조건으로 하여 설정해도 된다. LED(40)는 비교적 지향성이 강하기 때문에 컨트롤러(20)를 지나치게 기울이게 되면 촬상장치(2)에서 빛을 받기가 어려워진다. 이 LED(40)의 지향성을 이용하여 LED화상후보를 탐색할 때에, 제1LED(40a)로부터 소정 각도(예컨대 45°)보다도 기울어져 있지 않을 것을 조건으로 하여 LED화상의 추출처리를 행함으로써 처리 부하를 대폭 경감하는 것이 가능해진다.
본 실시예에서는 이전 프레임 화상과 현재 프레임 화상의 차분 화상을 이용하기 때문에, 컨트롤러(20)에 움직임이 없는 경우에는 LED(40)의 화상은 차분 화상으로부터 제외된다. 그 때문에 차분 화상을 이용하는 경우에는 도 10에 나타내는 LED추출처리에 의해 꼭 LED화상이 발견되는 것은 아니다. 위치추정부(104)는 도 10에 나타내는 LED추출처리에 의해 LED화상이 발견되지 않은 경우에, 컨트롤러(20)가 이전 프레임의 위치로부터 움직이지 않고 있는 것으로 추정하여 이전 프레임에서의 컨트롤러(20)의 위치정보 및 자세정보를 취득한다. 이때 위치추정부(104)는 2값화 화상을 이용해서 LED화상을 추출해도 된다.
도 11은 도 10의 S122에 나타내는 제2LED 검출처리의 처리순서를 나타내는 흐름도이다. 제1LED(40a)로 가정한 LED화상후보의 구성 화소수를 N으로 한다. 우선 LED화상추출부(142)는 LED화상후보의 화소수가 1/2×N 이상이면서 2N 이하인지 여부를 판정한다(S140). 이는 LED화상이라면 크기나 형태는 제1LED(40a)와 크게 차이가 없다고 하는 사실에 근거하고 있다. LED화상후보의 구성 화소수가 구성 화소수 N에 대하여 소정의 범위 내에 있으면(S140의 Y), 그 LED화상후보가 제1LED(40a)의 오른쪽에 존재하는지 여부를 판정한다(S142). 오른쪽인지 여부의 판단은 제1LED(40a)의 오른쪽 위 45°에서 오른쪽 아래 45°의 범위 내에 존재하는지 여부에 따라 결정된다. 제1LED(40a)의 오른쪽에 있는 경우(S142의 Y), 제1LED(40a)와 LED화상후보와의 거리(D12)가 Da이상이면서 Db이하인지 여부를 판정한다(S144). 여기서는 서로 거리가 너무 가깝거나 또는 너무 떨어져 있는 경우에는 제2LED(40b)로서 맞지 않는 것으로 판정하고 있다. 거리(D12)가 Da이상이면서 Db이하인 경우(S144의 Y), 그 LED화상후보가 제2LED(40b)가 될 수 있는 것으로 판단되어 제2LED(40b)의 존재가 확인된다(S146). 한편 LED화상후보의 구성 화소수가 소정의 범위 내에 없는 경우(S140의 N), LED(40a)의 오른쪽에 존재하지 않는 경우(S142의 N), 거리(D12)가 소정의 범위 내에 없는 경우(S144의 N)에는, 그 LED화상후보가 제2LED(40b)가 아니라고 판단된다.
도 12는 도 10의 S124에 나타내는 제3LED 검출처리의 처리순서를 나타내는 흐름도이다. 제1LED(40a)로 가정한 LED화상후보의 구성 화소수를 N으로 한다. 우선 LED화상추출부(142)는 LED화상후보의 화소수가 1/2×N 이상이면서 2N 이하인지 여부를 판정한다(S160). LED화상후보의 구성 화소수가 구성 화소수 N에 대하여 소정의 범위 내에 있으면(S160의 Y), 그 LED화상후보가 제1LED(40a)의 아래쪽에 존재하는지 여부를 판정한다(S162). 아래쪽인지 여부의 판단은 제1LED(40a)의 왼쪽 아래 45°에서 오른쪽 아래 45°의 범위 내에 존재하는지 여부에 따라 결정된다. 제 1LED(40a)의 아래쪽에 있는 경우(S162의 Y), 제1LED(40a)와 LED화상후보와의 거리가 1/
Figure 112008053554880-pct00002
×D12 이상이면서
Figure 112008053554880-pct00003
D12 이하인지 여부를 판정한다(S164). 여기서는 서로 거리가 너무 가깝거나 또는 너무 떨어져 있는 경우에는 제3LED(40c)로서 맞지 않는 것으로 판정하고 있다. 거리가 1/
Figure 112008053554880-pct00004
×D12 이상이면서
Figure 112008053554880-pct00005
D12 이하인 경우(S164의 Y), 제1LED(40a)로부터 제2LED(40b)까지의 선분과, 제1LED(40a)로부터 LED화상후보까지의 선분의 각도가 소정의 범위 내인지 여부가 판정된다(S166). 이때 소정의 범위 내에 있으면(S166의 Y), 그 LED화상후보가 제3LED(40c)가 될 수 있는 것으로 판단되어 제3LED(40c)의 존재가 확인된다(S168). 한편 LED화상후보의 구성 화소수가 소정의 범위 내에 없는 경우(S160의 N), LED(40a)의 아래쪽에 존재하지 않는 경우(S162의 N), 제1LED(40a)와의 거리가 소정의 범위 내에 없는 경우(S164의 N), 각도가 소정의 범위 내에 없는 경우(S166의 N)에는, 그 LED화상후보가 제3LED(40c)가 아니라고 판단된다(S170).
도 13은 도 10의 S126에 나타내는 제4LED 검출처리의 처리순서를 나타내는 흐름도이다. 제1LED(40a)로 가정한 LED화상후보의 구성 화소수를 N으로 한다. 우선 LED화상추출부(142)는 LED화상후보의 화소수가 1/2×N 이상이면서 2N 이하인지 여부를 판정한다(S180). LED화상후보의 구성 화소수가 구성 화소수 N에 대하여 소정의 범위 내에 있으면(S180의 Y), 제1LED(40a)로부터 제2LED(40b)의 벡터와, 제3LED(40c)와 LED화상후보의 벡터가 이루는 각도가 소정치 이하인지 여부를 판정한다(S182). 제1LED(40a)로부터 제2LED(40b)의 벡터와, 제3LED(40c)와 LED화상후보의 벡터가 이루는 각도가 소정치 이하이면(S182의 Y), 제1LED(40a)로부터 제3LED(40c)의 벡터와, 제2LED(40b)와 LED화상후보의 벡터가 이루는 각도가 소정치 이하인지 여부를 판정한다(S184). 제1LED(40a)로부터 제3LED(40c)의 벡터와, 제2LED(40b)와 LED화상후보의 벡터가 이루는 각도가 소정치 이하이면(S184의 Y), 그 LED화상후보가 제4LED(40d)가 될 수 있는 것으로 판단되어 제4LED(40d)의 존재가 확인된다(S186). 한편 LED화상후보의 구성 화소수가 소정의 범위 내에 없는 경우(S180의 N), 제1LED(40a)로부터 제2LED(40b)의 벡터와, 제3LED(40c)와 LED화상후보의 벡터가 이루는 각도가 소정치를 넘는 경우(S182의 N), 제1LED(40a)로부터 제3LED(40c)의 벡터와, 제2LED(40b)와 LED화상후보의 벡터가 이루는 각도가 소정치를 넘는 경우에는(S184의 N), 그 LED화상후보가 제4LED(40d)가 아니라고 판단된다(S188).
이상에 의해 LED화상추출부(142)는 논리곱 화상으로부터 제1LED(40a)∼제4LED(40d)의 화상을 추출할 수 있다. 추출된 제1LED(40a)∼제4LED(40d)의 화상 위치정보는 위치추정부(104)에 보내진다.
위치추정부(104)는 컨트롤러(20)에 있어서의 LED(40)의 2차원 배치에 근거하여 제1LED(40a)∼제4LED(40d) 화상의 프레임 화상에서의 위치정보를 취득한다. 위치추정부(104)는 추출한 제1LED(40a), 제2LED(40b), 제3LED(40c) 및 제4LED(40d)의 아핀(affine) 변환을 구하여 실공간에 있어서의 위치 및 자세를 산출한다. 실공간에서의 위치는 직교 좌표계에 있어서의 좌표(X, Y, Z)이며, 실공간에서의 자세는 X축, Y축, Z축에 있어서의 회전각이다. 3축에 있어서의 좌표 및 회전각을 구함으로써 위치추정부(104)는 촬상장치(2)로부터의 거리도 포함한 공간 내에서의 위치를 추정할 수 있다. 위치추정부(104)는 아핀 변환을 구함으로써 컨트롤러(20)의 프레임 화상 중의 위치를 추정해도 된다. 예컨대 XYZ공간 중 XY좌표를 취함으로써 프레임 화상 중의 위치를 취득할 수 있다. 위치추정부(104)는 추정한 컨트롤러(20)의 위치나 자세를 애플리케이션 처리부(110)에 보낸다.
LED(40)의 오(誤)인식을 회피하기 위해서, 위치추정부(104)는 앞서 취득한 LED화상의 위치와 이번에 취득한 LED화상의 위치의 변화량이 소정치를 넘는 경우, 이번에 취득한 LED화상의 위치를 에러로서 처리한다. 다시 말하면, 1프레임 사이에 위치나 자세가 소정치 이상 변화하는 경우에는 외란(外亂)적인 요소에 의해 다른 오브젝트를 LED(40)로서 오인식했을 가능성이 있기 때문에 추출한 LED(40)의 위치정보를 파기한다.
그러나 그러한 경우라도 실제로 큰 변화량으로 컨트롤러(20)가 이동할 수도 있기 때문에, 위치추정부(104)는 연속해서 발생하는 에러의 횟수를 카운트하여 카운트값이 소정치에 도달한 경우에, 그때 취득한 LED화상의 위치를 정상인 것으로서 처리해도 된다.
위치추정부(104)는 예컨대 현재 프레임 화상이나 논리곱 화상을 바탕으로 LED(40)의 이동방향이나 속도를 추정하는 것도 가능하다. 예컨대 촬상장치(2)의 셔터 속도를 줄이면 LED(40)의 화상이 타원이나 직육면체로 촬상되게 된다. 그래서 LED화상의 형상으로부터 이동방향뿐만 아니라 이동속도도 추정하는 것이 가능하다. 예컨대 이동방향 및 속도를 추정할 수 있으면, 촬상장치(2)에 있어서 돌연 보이지 않게 된 경우라도 컨트롤러(20)의 위치나 자세를 예측할 수 있다. 모든 LED(40)의 형상이 동일한 방향으로 쏠려 있는 경우에 컨트롤러(20)의 이동방향과 속도를 추정해도 된다.
애플리케이션 처리부(110)는 추정된 컨트롤러(20)의 위치나 자세를 게임 입력으로서 게임 애플리케이션의 처리에 반영한다. 이 반영 수법은 여러 가지로 생각될 수 있는데, 가장 직관적으로는 추정한 컨트롤러(20)의 위치에 대응한 게임 화상 중의 위치에 가상 오브젝트를 추종시켜서 표시한다. 사용자가 촬상장치(2)에 대하여 컨트롤러(20)를 움직이면, 그 움직임에 추종해서 게임 화상 내의 가상 오브젝트를 움직일 수 있다.
또한 이상적인 상태라면 프레임 화상마다 LED(40)의 위치나 자세를 구해서 게임 화상에 반영해 가면 되지만, 한편으론 컨트롤러(20)의 방향이나 주변 빛의 환경 등에 의해 프레임 화상에서 LED(40)의 위치나 자세를 구할 수 없는 상황도 발생할 수 있다. 그러한 상황이 계속된 후에 돌연 LED(40)의 위치나 자세가 구해지면 정지하고 있던 가상 오브젝트가 새로운 위치로 갑자기 이동하게 되어 사용자에 위화감을 준다. 그 때문에 논리곱 화상으로부터 LED(40)의 위치나 자세를 검출했다 하더라도, 게임 화상으로서는 가상 오브젝트를 취득한 위치까지 이동시키는 것이 아니라, 정보누락이 있는 경우라 할지라도 자연스러운 움직임을 실현할 수 있도록 추종 처리를 행하게 한다.
도 14(a), 도 14(b)는 컨트롤러에 대응하는 가상 오브젝트가 게임 화면 내에서 원활한 추종 동작을 실현하기 위한 알고리즘을 설명하기 위한 도이다. 설명의 편의상 가상 오브젝트의 위치 변화에 대해서 설명하겠으나, 자세 변화에 대해서도 동일한 알고리즘을 적용할 수 있다.
위치추정부(104)에 있어서, 아핀 변환을 구함으로써 도출된 위치 파라미터를 Pi-1, Pi, Pi +1(P의 첨자는 게임 화면 프레임의 번호를 나타냄)로 한다. 우선 프레임 화상이 변환되어 Pi에서 Pi +1로 위치 파라미터가 변화하는 경우를 생각한다.
새로운 위치 파라미터(Pi +1)가 얻어졌을 때, 게임 화면에 반영하는 위치 파라미터는 이하의 식으로 구해진다.
Qi +1= (Qi+Pi +1)/2
즉, 새로운 위치 파라미터 Pi +1로 직접 이동하는 것이 아니라 이전 프레임의 게임 화면에서의 위치 파라미터와, 현재 프레임의 새로운 위치 파라미터 Pi +1과의 중점(中點)을 게임 화면에 있어서의 새로운 위치 파라미터로서 설정한다. 또한 위치 파라미터 Qi +1은 위치 파라미터 Qi와 위치 파라미터 Pi +1의 중점일 필요는 없고, 위치 파라미터 Qi와 위치 파라미터 Pi +1의 사이의 선분을 A:B로 분할하는 점이어도 된다.
도 12(b)는 위치 파라미터로서 Pi +1을 취득하지 못한 경우의 예이다. 이러한 경우는 본 알고리즘의 효과를 발휘할 수 있다. 이 경우는 최신의 위치 파라미터가 Pi+1 대신에 이용된다. 여기서 최신의 위치 파라미터는 Pi이며,
Qi +1=(Qi+Pi)/2
로서 구해진다.
본 알고리즘에 의해 게임 화상에서의 위치 파라미터 Q를 취득하면, 공간 내의 컨트롤러(20)가 크게 변위하거나 또는 논리곱 화상으로부터 추출할 수 없는 경우라 할지라도 가상 오브젝트는 항상 조금씩 이동할 수 있다. 그 때문에 게임 화상 중에 가상 오브젝트가 갑자기 움직이지 않게 되거나 또는 갑자기 움직이거나 하는 상황의 발생을 회피할 수 있어 컨트롤러(20)에 대해 원활한 추종 처리를 실현할 수 있다.
이상 본 발명을 실시예를 바탕으로 설명했다. 이 실시예는 예시이며, 그들의 각 구성요소나 각 처리 프로세스의 조합에 여러 가지 변형예가 가능하다는 것, 또 그러한 변형예도 본 발명의 범위에 있다는 것은 당업자에게 이해되는 부분이다.
본 실시예에서는 컨트롤러(20)를 촬상장치(2)로 촬상해 프레임 화상으로부터 컨트롤러(20)의 위치나 자세를 추정하여, 그 위치정보나 자세정보를 게임 애플리케이션의 처리에 반영시키는 것으로 했다. 컨트롤러(20)의 LED(40)는 예컨대 게임 애플리케이션의 진행상황에 따라 점등 패턴을 변경해도 된다.
사용자가 게임 애플리케이션에 참가한 직후에 게임장치(10)는 컨트롤러(20)에 대하여 소정의 저주파로 4개의 LED(40)를 점등시키는 제어신호를 송신해도 된다. 점멸지시부(106)는 컨트롤러(20)에 대하여 소정의 저주파에 의한 점멸 패턴을 지시하는 제어신호를 생성한다. 이 저주파 점멸 제어신호는 무선통신 모듈(108)로부터 컨트롤러(20)에 송신된다. 또한 복수의 컨트롤러(20)가 존재하는 경우에는 컨트롤러(20)마다 점멸 주파수가 설정된다.
컨트롤러(20)는 지정된 저주파로 LED(40)를 점등하고, 촬상장치(2)는 30장/초의 촬상주기로 프레임 화상을 촬상한다. 게임장치(10)는 복수의 프레임 화상으로부터 소정의 주기로 점등을 온/오프하고 있는 LED화상을 추출한다. 게임시스템(1) 내에 복수의 컨트롤러(20)가 존재하는 경우에는 컨트롤러(20)마다 점등의 주기를 설정한다. 이로써 컨트롤러(20)의 위치를 확인할 수 있는 동시에 각각의 컨트롤러(20)를 구별해서 인식할 수도 있다. 이 처리는 이상적으로는 게임 애플리케이션에 참가한 후 1회 행해지면 되지만, 실공간 내에서는 컨트롤러(20)가 촬상장치(2)에서 돌연 보이지 않게 되는 경우도 있다. 그 때문에 각 컨트롤러(20)는 수 초마다 등의 소정의 주기로 컨트롤러마다 설정된 저주파에 의해 LED(40)를 점멸시켜도 된다.
예컨대 4개의 LED(40)가 저주파로 점등과 소등을 행하는 경우에는, LED(40)를 촬상할 수 있는 프레임과 촬상할 수 없는 프레임이 소정의 주기로 변환되게 된다. 촬상주기(30프레임/초)에 대하여 LED(40)를 45Hz로 점등 제어하면, 연속한 2장의 프레임으로 촬상되고 그 다음은 촬상되지 않는다는 상황이 반복되게 된다. 프레임 화상으로 촬상되는 경우와 촬상되지 않는 경우가 있기 때문에 LED(40)가 정지한 상태라도 위치정보를 취득할 수 있다.
여기서 저주파 점등이란, 촬상주기에 대하여 LED 발광이 촬상되는 프레임과 촬상되지 않는 프레임이 존재할 수 있는 주파수에서의 점등을 의미한다. 한편 고주파 점등이란, 촬상장치(2)의 촬상주기(30프레임/초)에 대하여 항상 프레임 화상으로 촬상되는 주파수에서의 점등을 의미한다. 예컨대 1kHz로 LED(40)를 점등한 경우 라도, 예컨대 촬상장치(2)의 촬상주기가 매우 높으면 LED 발광이 촬상되는 프레임과 촬상되지 않는 프레임이 출현하기 때문에, LED(40)가 정지한 상태라 할지라도 위치정보를 취득할 수 있다.
고주파 점등하는 LED(40)의 위치나 자세는 게임 애플리케이션의 입력으로서 이용된다. 그 때문에 위치추정부(104)로 추정된 컨트롤러(20)의 위치정보는 애플리케이션 처리부(110)에 차차 보내져 애플리케이션의 처리에 반영된다. 애플리케이션 처리부(110)에는 사용자가 컨트롤러(20)의 방향키(21) 등을 조작한 입력도 무선통신 모듈(108)을 통해서 송신된다. 애플리케이션 처리부(110)는 컨트롤러(20)의 위치·자세정보와, 컨트롤러(20)에 있어서의 조작입력으로부터 게임을 진행시켜 게임 애플리케이션의 처리결과를 나타내는 화상신호 및 음성신호를 생성한다.
또한 변형예로서, 4개의 LED(40) 중 하나를 다른 LED(40)와는 다른 점멸 패턴으로 점등시킴으로써 특정한 LED(40)를 인식하는 것도 가능해진다. 예컨대 3개의 LED에는 고주파 점등을 행하고, 한 개의 LED에는 저주파 점등을 행함으로써, 예컨대 프레임 화상 중의 제1LED(40a)가 어느 것인지를 확인하는 것도 가능해진다.
실공간에서의 컨트롤러(20)의 위치나 자세를 검출해서 게임 애플리케이션의 처리에 반영함으로써 새로운 게임 애플리케이션을 실현할 수 있다. 테니스 게임을 예로 들면, 프레임 화상에서의 컨트롤러(20)의 높이를 테니스 볼의 타점 높이로 하고, 컨트롤러(20)의 방향을 볼의 타구 방향, 컨트롤러(20)를 움직이는 속도를 볼을 치는 강도로 하여 컨트롤러(20)를 움직임으로써 게임을 진행시킬 수 있다. 이들의 움직임은 실제 라켓을 휘두르는 움직임에 근사하고 있기 때문에, 테니스를 실제로 하는 것과 비슷한 감각을 사용자에게 줄 수 있다. 이때 컨트롤러(20)의 버튼이나 키를 게임 입력으로서 그대로 이용할 수 있도록 함으로써, 종래의 게임 조작입력을 유지하면서 감각적으로 참신한 게임 입력을 행하게 할 수 있다. 이와 같이 컨트롤러(20)에 지시자로서 마련한 LED를 유효하게 활용함으로써 게임 애플리케이션의 폭을 한층 넓힐 수 있다.
예컨대 볼을 치는 강도를 컨트롤러(20)의 버튼 조작에 의해 정해도 된다. 종래형의 버튼 조작과 참신한 게임 입력을 조합함으로써 새로운 유기(遊技)성을 실현할 수 있다. 예컨대 상대 코트에 볼을 떨어뜨리는 위치를 컨트롤러(20)의 방향으로 지정하면서 버튼 입력을 행함으로써 볼을 올리고, 컨트롤러(20)를 움직임으로써 강한 서브를 칠 수 있는 테니스 게임을 만드는 것도 가능하다.
게임 애플리케이션으로서는, 예컨대 오토바이의 드라이브 게임에서, 컨트롤러(20)의 자세를 조작함으로써 오토바이를 컨트롤하는 게임 입력으로서 이용해도 된다. 이때 스피드는 컨트롤러(20)를 움직이는 속도로 결정해도 되고, 또 버튼 입력으로 결정해도 된다. 이와 같이 종래형의 버튼 입력과, 컨트롤러(20)의 위치나 자세에 의한 정적인 입력과, 또 컨트롤러(20)의 이동속도 등의 상태변화를 바탕으로 한 동적인 입력을 조합시켜서 이용함으로써 게임 애플리케이션의 조작성을 향상시킬 수 있다.
예컨대 컨트롤러(20)가 화상표시장치(3)의 화면으로부터 프레임 아웃 될 거 같은 경우, 애플리케이션 처리부(110)는 컨트롤러(20)의 위치정보를 바탕으로 사용자에 대하여 프레임 아웃 될 거 같다는 내용을 통지하는 처리를 행해도 된다. 예컨 대 컨트롤러(20)가 프레임 아웃 될 거 같은 경우에, 컨트롤러(20)에 대하여 진동자를 진동시키기 위한 진동 제어신호를 생성하여 무선통신 모듈(108)로부터 송신시켜도 된다. 또한 컨트롤러(20)의 움직임에 추종하는 가상 오브젝트를 게임 화상으로서 표시시키고 있는 경우에는, 사용자에게 눈에 띄도록 가상 오브젝트를 움직임으로써 프레임 아웃 될 거 같다는 내용을 사용자에게 전해도 된다. 프레임 아웃 될 거 같은지의 여부는, 예컨대 프레임 화상의 위치로 결정해도 되고, 프레임 화상의 가장자리부에 가까운 위치에 컨트롤러(20)의 위치가 추정되는 경우에 이 통지처리를 행해도 된다.
실시예에서 개시된 발명의 특징은 다음 항목에 의해 규정되어도 된다.
(항목 1)
입력되는 프레임 화상으로부터 발광체 화상의 위치를 취득하는 화상처리장치로서,
이전 프레임 화상과 현재 프레임 화상의 차분 화상을 생성하는 차분 화상생성부와,
현재 프레임 화상을 소정의 역치를 이용해 2값화 처리하여 2값화 화상을 생성하는 2값화 화상생성부와,
상기 차분 화상과 상기 2값화 화상을 논리 연산한 논리연산 화상을 생성하는 논리연산부와,
상기 논리연산 화상으로부터 발광체 화상을 추출하는 추출부와,
발광체 화상의 프레임 화상에서의 위치를 취득하는 위치취득부를 구비하는 것을 특징으로 하는 화상처리장치.
(항목 2)
상기 논리연산부는 화소마다 상기 차분 화상의 화소값과 상기 2값화 화상의 화소값과의 논리곱 연산을 행함으로써 논리연산 화상을 생성하는 것을 특징으로 하는 항목 1에 기재된 화상처리장치.
(항목 3)
상기 추출부는 복수의 발광체에 의해 형성되는 2차원 패턴을 미리 인식하고 있어, 상기 2차원 패턴을 이용해 발광체 화상의 추출처리를 행하는 것을 특징으로 하는 항목 1 또는 2에 기재된 화상처리장치.
(항목 4)
상기 위치취득부는 앞서 취득한 발광체 화상의 위치와 이번에 취득한 발광체 화상의 위치의 변화량이 소정치를 넘는 경우, 이번에 취득한 발광체 화상의 위치를 에러로서 처리하는 것을 특징으로 하는 항목 1 내지 3 중 어느 하나에 기재된 화상처리장치.
(항목 5)
상기 위치취득부는 연속해서 발생하는 에러의 횟수를 카운트하여 카운트값이 소정치에 도달한 경우에, 그때 취득한 발광체 화상의 위치를 정상인 것으로서 처리하는 것을 특징으로 하는 항목 4에 기재된 화상처리장치.
본 발명은 애플리케이션 처리기능을 갖는 엔터테인먼트 시스템 및 상기 엔터 테인먼트 시스템에서 이용되는 조작입력장치에 이용할 수 있다.

Claims (5)

  1. 사용자가 조작입력을 행하기 위한 조작입력장치와, 상기 조작입력장치에서의 조작입력을 바탕으로 애플리케이션을 처리하여 애플리케이션의 처리결과를 나타내는 화상신호를 생성하는 처리장치와, 상기 조작입력장치를 촬상하는 촬상장치와, 상기 처리장치에서 생성된 화상신호를 출력하는 화상표시장치를 구비한 엔터테인먼트 시스템으로서,
    상기 조작입력장치는 사용자가 애플리케이션을 진행시키는 조작입력을 행하기 위한 복수의 입력부와, 실행되는 애플리케이션에 있어서 상기 조작입력장치에 설정되는 번호를 표현하기 위한 발광소자를 상기 조작입력장치의 케이스 배면에 복수개 가지며,
    상기 처리장치는 상기 조작입력장치에서의 조작입력을 접수하여 애플리케이션의 처리에 반영하는 동시에, 상기 촬상장치로부터 촬상화상을 취득해 촬상화상에서의 상기 발광소자의 위치로부터 상기 조작입력장치의 촬상화상 중의 위치를 취득하여, 취득한 위치정보를 애플리케이션의 처리에 반영함으로써 조작입력과 취득한 위치정보에 근거한 애플리케이션의 처리결과를 나타내는 화상신호를 생성하는 것을 특징으로 하는 엔터테인먼트 시스템.
  2. 제1항에 있어서,
    상기 조작입력장치는 복수의 발광소자 중 상기 조작입력장치에 설정되는 번호에 대응하는 발광소자만을 점등시킴으로써, 발광소자를, 상기 번호를 표현하는 지시자로서 기능하게 하는 것을 특징으로 하는 엔터테인먼트 시스템.
  3. 제1항에 있어서,
    상기 처리장치는 상기 발광소자의 점등을 제어하는 제어신호를 상기 조작입력장치에 보내고,
    상기 조작입력장치는 상기 제어신호에 따라 상기 발광소자를 점등하는 것을 특징으로 하는 엔터테인먼트 시스템.
  4. 제3항에 있어서,
    상기 처리장치는 상기 조작입력장치의 위치정보를 애플리케이션의 처리에 반영시킬 때에, 상기 발광소자를 저주파로 점등시키는 제1제어신호와, 고주파로 점등시키는 제2제어신호 중 어느 하나를 상기 조작입력장치에 보내는 것을 특징으로 하는 엔터테인먼트 시스템.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 촬상장치는 상기 화상표시장치의 표시화면을 사용자가 인식할 수 있는 위치가 촬상 범위에 포함되도록, 상기 화상표시장치의 근방에 배치되는 것을 특징으로 하는 엔터테인먼트 시스템.
KR1020087018327A 2006-03-14 2007-02-23 엔터테인먼트 시스템 KR100993033B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006070059A JP5089060B2 (ja) 2006-03-14 2006-03-14 エンタテインメントシステムおよびゲームコントローラ
JPJP-P-2006-00070059 2006-03-14

Publications (2)

Publication Number Publication Date
KR20080080665A KR20080080665A (ko) 2008-09-04
KR100993033B1 true KR100993033B1 (ko) 2010-11-08

Family

ID=38509198

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087018327A KR100993033B1 (ko) 2006-03-14 2007-02-23 엔터테인먼트 시스템

Country Status (6)

Country Link
US (4) US8292737B2 (ko)
EP (1) EP1994968B1 (ko)
JP (1) JP5089060B2 (ko)
KR (1) KR100993033B1 (ko)
CN (1) CN101340954B (ko)
WO (1) WO2007105356A1 (ko)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8608548B2 (en) * 2002-06-12 2013-12-17 Igt Intelligent wagering token and wagering token tracking techniques
US8616984B2 (en) * 2002-06-12 2013-12-31 Igt Intelligent player tracking card and wagering token tracking techniques
US8795061B2 (en) 2006-11-10 2014-08-05 Igt Automated data collection system for casino table game environments
US20090131151A1 (en) * 2006-09-01 2009-05-21 Igt Automated Techniques for Table Game State Tracking
US10279254B2 (en) * 2005-10-26 2019-05-07 Sony Interactive Entertainment Inc. Controller having visually trackable object for interfacing with a gaming system
JP4443531B2 (ja) * 2006-04-11 2010-03-31 株式会社ソニー・コンピュータエンタテインメント エンタテインメントシステムおよび処理装置
US8277314B2 (en) 2006-11-10 2012-10-02 Igt Flat rate wager-based game play techniques for casino table game environments
US20090305785A1 (en) * 2008-06-06 2009-12-10 Microsoft Corporation Gesture controlled game screen navigation
US8599132B2 (en) * 2008-06-10 2013-12-03 Mediatek Inc. Methods and systems for controlling electronic devices according to signals from digital camera and sensor modules
US20100041312A1 (en) * 2008-08-15 2010-02-18 Paul King Electronic toy and methods of interacting therewith
US9898675B2 (en) * 2009-05-01 2018-02-20 Microsoft Technology Licensing, Llc User movement tracking feedback to improve tracking
CN101559283B (zh) * 2009-05-15 2012-01-11 凌阳科技股份有限公司 一种扩大成像装置可移动范围的成像系统和方法
US8842096B2 (en) * 2010-01-08 2014-09-23 Crayola Llc Interactive projection system
US8933884B2 (en) * 2010-01-15 2015-01-13 Microsoft Corporation Tracking groups of users in motion capture system
JP5241789B2 (ja) * 2010-09-02 2013-07-17 株式会社ソニー・コンピュータエンタテインメント プログラム、オブジェクト制御方法およびゲーム装置
JP5449096B2 (ja) * 2010-09-10 2014-03-19 アルプス電気株式会社 光検知装置
CN102749994B (zh) * 2012-06-14 2016-05-04 华南理工大学 交互系统中手势的运动方向及速率强度的提示方法
TWI546703B (zh) * 2012-09-12 2016-08-21 原相科技股份有限公司 物件追蹤裝置及其控制方法
CN103677237B (zh) * 2012-09-20 2016-12-21 原相科技股份有限公司 对象追踪装置及其控制方法
US9571816B2 (en) * 2012-11-16 2017-02-14 Microsoft Technology Licensing, Llc Associating an object with a subject
US9251701B2 (en) 2013-02-14 2016-02-02 Microsoft Technology Licensing, Llc Control device with passive reflector
WO2015162942A1 (ja) * 2014-04-25 2015-10-29 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、情報処理方法、プログラム及び情報記憶媒体
JP6452223B2 (ja) * 2014-06-30 2019-01-16 カシオ計算機株式会社 端末装置、端末制御方法及び端末制御プログラム
JP6788327B2 (ja) 2015-02-27 2020-11-25 株式会社ソニー・インタラクティブエンタテインメント 表示制御プログラム、表示制御装置、及び表示制御方法
US10456685B2 (en) * 2015-04-14 2019-10-29 Nintendo Co., Ltd. Identifying and tracking objects via lighting patterns
JP6635597B2 (ja) * 2015-06-12 2020-01-29 任天堂株式会社 情報処理システム、および、操作装置
CN107803008A (zh) * 2015-07-15 2018-03-16 龚春华 一种用于团体协作训练的颠球体育器械
CN106127772A (zh) * 2016-06-29 2016-11-16 陈漱文 图像化灯阵排布识别方法
CN106621324A (zh) * 2016-12-30 2017-05-10 当家移动绿色互联网技术集团有限公司 Vr游戏的交互操作方法
US10507385B2 (en) 2017-01-25 2019-12-17 Kieran S. Lyden Game controller
US10960225B2 (en) * 2017-10-10 2021-03-30 Massachusetts Institute Of Technology Systems and methods for preventing, mitigating, and/or treating dementia via visual stimulation that binds higher order brain regions, reduces neurodegeneration and neuroinflammation, and improves cognitive function
KR102460060B1 (ko) 2017-10-10 2022-10-28 메사추세츠 인스티튜트 오브 테크놀로지 치매를 예방, 경감 및/또는 치료하기 위한 시스템 및 방법
TWI636381B (zh) * 2017-10-19 2018-09-21 財團法人工業技術研究院 互動顯示系統及互動顯示控制方法
WO2019096369A1 (en) * 2017-11-14 2019-05-23 Alterface Holdings Tracking of a user device
JP2021060627A (ja) 2018-02-07 2021-04-15 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP7283958B2 (ja) * 2019-04-11 2023-05-30 株式会社ソニー・インタラクティブエンタテインメント 複数のマーカを備えたデバイス
JP7288792B2 (ja) 2019-04-24 2023-06-08 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置およびデバイス情報導出方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000102674A (ja) 1998-07-31 2000-04-11 Sony Computer Entertainment Inc エンタテインメントシステム及び供給媒体、並びに入力操作装置
JP2002101478A (ja) 2000-09-26 2002-04-05 Sharp Corp 通信開始通知機能を備えた赤外線制御装置

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4796019A (en) * 1987-02-19 1989-01-03 Rca Licensing Corporation Input device for a display system
US5414426A (en) * 1987-10-14 1995-05-09 Universal Electronics Inc. Favorite key macro command and chained macro command in a remote control
US4959810A (en) * 1987-10-14 1990-09-25 Universal Electronics, Inc. Universal remote control device
US5227985A (en) * 1991-08-19 1993-07-13 University Of Maryland Computer vision system for position monitoring in three dimensions using non-coplanar light sources attached to a monitored object
JP3599115B2 (ja) * 1993-04-09 2004-12-08 カシオ計算機株式会社 楽器ゲーム装置
US5670988A (en) * 1995-09-05 1997-09-23 Interlink Electronics, Inc. Trigger operated electronic device
US20020036617A1 (en) * 1998-08-21 2002-03-28 Timothy R. Pryor Novel man machine interfaces and applications
US5874906A (en) * 1997-09-22 1999-02-23 Wilnel, Inc. Data entry system
JP3794463B2 (ja) * 1998-06-30 2006-07-05 ソニー株式会社 多次元コード認識処理方法、多次元コード認識処理装置、および多次元コード認識処理プログラム
JP2000172431A (ja) * 1998-12-09 2000-06-23 Sony Corp 情報入力装置及びゲーム装置
JP2000259340A (ja) * 1999-03-12 2000-09-22 Sony Corp 入力装置および方法、入力システム、並びに提供媒体
JP4691754B2 (ja) * 1999-09-07 2011-06-01 株式会社セガ ゲーム装置
US20050037844A1 (en) * 2002-10-30 2005-02-17 Nike, Inc. Sigils for use with apparel
US6238289B1 (en) * 2000-01-10 2001-05-29 Eleven Engineering Inc. Radio frequency game controller
JP4708581B2 (ja) * 2000-04-07 2011-06-22 キヤノン株式会社 座標入力装置、座標入力指示具及びコンピュータプログラム
US6511378B1 (en) * 2000-05-05 2003-01-28 Intel Corporation Method of identifying game controllers in multi-player game
AU7868201A (en) * 2000-10-27 2002-05-15 Sony Computer Entertainment Inc Information processing system comprising a plurality of operation terminal devices and an information processing device
US20020085097A1 (en) * 2000-12-22 2002-07-04 Colmenarez Antonio J. Computer vision-based wireless pointing system
US6794992B1 (en) * 2000-12-29 2004-09-21 Bellsouth Intellectual Property Corporation Integrated remote control unit for operating a television and a video game unit
JP2002306846A (ja) * 2001-04-12 2002-10-22 Saibuaasu:Kk ゲーム装置用コントローラ
US7084888B2 (en) 2001-08-09 2006-08-01 Konami Corporation Orientation detection marker, orientation detection device and video game device
US6544124B2 (en) * 2001-08-29 2003-04-08 Radica China Ltd. Handheld steering wheel game controller
JP2003254716A (ja) * 2002-03-04 2003-09-10 Sony Corp 3次元位置・姿勢計測装置及び方法、記憶媒体、並びにコンピュータ・プログラム
US20030199325A1 (en) * 2002-04-23 2003-10-23 Xiaoling Wang Apparatus and a method for more realistic shooting video games on computers or similar devices using visible or invisible light and an input computing device
US7623115B2 (en) * 2002-07-27 2009-11-24 Sony Computer Entertainment Inc. Method and apparatus for light input device
US7850526B2 (en) * 2002-07-27 2010-12-14 Sony Computer Entertainment America Inc. System for tracking user manipulations within an environment
US7854655B2 (en) * 2002-07-27 2010-12-21 Sony Computer Entertainment America Inc. Obtaining input for controlling execution of a game program
US6773349B2 (en) * 2002-07-31 2004-08-10 Intec, Inc. Video game controller with integrated video display
US20040224768A1 (en) * 2002-09-24 2004-11-11 Saied Hussaini Video game controller with integrated status indicators
US20040063502A1 (en) * 2002-09-24 2004-04-01 Intec, Inc. Power module
US7195561B2 (en) * 2002-09-24 2007-03-27 Intec, Inc. Video game controller with illuminated cable
US20040063480A1 (en) 2002-09-30 2004-04-01 Xiaoling Wang Apparatus and a method for more realistic interactive video games on computers or similar devices
US20040141321A1 (en) * 2002-11-20 2004-07-22 Color Kinetics, Incorporated Lighting and other perceivable effects for toys and other consumer products
US20040266528A1 (en) * 2003-06-27 2004-12-30 Xiaoling Wang Apparatus and a method for more realistic video games on computers or similar devices using visible or invisible light and a light sensing device
US7874917B2 (en) * 2003-09-15 2011-01-25 Sony Computer Entertainment Inc. Methods and systems for enabling depth and direction detection when interfacing with a computer program
US20050221894A1 (en) * 2004-03-31 2005-10-06 Microsoft Corporation Multi-system game controller that operates in multiple USB modes
US20050221895A1 (en) * 2004-04-02 2005-10-06 Microsoft Corporation Binding of wireless game controller to host
CN1689681A (zh) * 2004-04-28 2005-11-02 英泰克公司 带有集成状态指示器的视频游戏控制器
TWM266959U (en) * 2004-10-12 2005-06-11 Alfadata Comp Corp Gleaming game/computer program control devices
US7597624B2 (en) * 2004-12-03 2009-10-06 Kenneth Tetterington Light gun system for plasma and LCD displays
US7548230B2 (en) * 2005-05-27 2009-06-16 Sony Computer Entertainment Inc. Remote input device
US8427426B2 (en) * 2005-05-27 2013-04-23 Sony Computer Entertainment Inc. Remote input device
US8870655B2 (en) * 2005-08-24 2014-10-28 Nintendo Co., Ltd. Wireless game controllers
US8308563B2 (en) * 2005-08-30 2012-11-13 Nintendo Co., Ltd. Game system and storage medium having game program stored thereon
WO2007037227A1 (ja) * 2005-09-27 2007-04-05 Tamura Corporation 位置情報検出装置、位置情報検出方法及び位置情報検出プログラム
US8147332B2 (en) * 2005-10-21 2012-04-03 Broadcom Corporation Method of indicating the ordinal number of a player in a wireless gaming system
JP4151982B2 (ja) * 2006-03-10 2008-09-17 任天堂株式会社 動き判別装置および動き判別プログラム
JP4684147B2 (ja) * 2006-03-28 2011-05-18 任天堂株式会社 傾き算出装置、傾き算出プログラム、ゲーム装置およびゲームプログラム
US9317110B2 (en) * 2007-05-29 2016-04-19 Cfph, Llc Game with hand motion control

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000102674A (ja) 1998-07-31 2000-04-11 Sony Computer Entertainment Inc エンタテインメントシステム及び供給媒体、並びに入力操作装置
JP2002101478A (ja) 2000-09-26 2002-04-05 Sharp Corp 通信開始通知機能を備えた赤外線制御装置

Also Published As

Publication number Publication date
KR20080080665A (ko) 2008-09-04
US20150301616A1 (en) 2015-10-22
US20100062854A1 (en) 2010-03-11
JP2007244534A (ja) 2007-09-27
US8613665B2 (en) 2013-12-24
US20070218994A1 (en) 2007-09-20
EP1994968A4 (en) 2012-03-21
US20140080607A1 (en) 2014-03-20
US9084934B2 (en) 2015-07-21
CN101340954B (zh) 2012-02-01
EP1994968A1 (en) 2008-11-26
US9566507B2 (en) 2017-02-14
CN101340954A (zh) 2009-01-07
EP1994968B1 (en) 2014-08-27
JP5089060B2 (ja) 2012-12-05
US8292737B2 (en) 2012-10-23
WO2007105356A1 (ja) 2007-09-20

Similar Documents

Publication Publication Date Title
KR100993033B1 (ko) 엔터테인먼트 시스템
JP5089078B2 (ja) ゲーム装置
JP4443531B2 (ja) エンタテインメントシステムおよび処理装置
JP4906391B2 (ja) ゲームコントローラ
US8851994B2 (en) Game device, game control method, and game control program adapted to control game by using position and posture of input device
US8897567B2 (en) Information processor, device, and information processing system
US20130172081A1 (en) Game device, game control method, and game control program, for controlling picture drawing game
EP2441503B1 (en) Game device, game control method, system, and game control program
JP2011024612A (ja) ゲーム装置
US8721444B2 (en) Game device for performing operation object control and non-operation object control
JP5670387B2 (ja) 発光色決定装置および発光色決定方法
JP5551675B2 (ja) ゲーム装置および仮想オブジェクト制御方法
JP5031070B2 (ja) 情報処理装置および情報処理システム
JP3748526B2 (ja) 入力装置
JP5237990B2 (ja) 情報処理装置、デバイスおよび情報処理システム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20131022

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141021

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151016

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161019

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20171018

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20181023

Year of fee payment: 9