WO2000068882A1 - Appareil et procede de traitement d'images, et robot associe - Google Patents

Appareil et procede de traitement d'images, et robot associe Download PDF

Info

Publication number
WO2000068882A1
WO2000068882A1 PCT/JP2000/002986 JP0002986W WO0068882A1 WO 2000068882 A1 WO2000068882 A1 WO 2000068882A1 JP 0002986 W JP0002986 W JP 0002986W WO 0068882 A1 WO0068882 A1 WO 0068882A1
Authority
WO
WIPO (PCT)
Prior art keywords
image processing
image data
image
read
data
Prior art date
Application number
PCT/JP2000/002986
Other languages
English (en)
French (fr)
Inventor
Kohtaro Sabe
Takayuki Sakamoto
Original Assignee
Sony Corporation
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 Sony Corporation filed Critical Sony Corporation
Priority to JP2000616587A priority Critical patent/JP4759810B2/ja
Priority to EP00925594A priority patent/EP1126409A4/en
Publication of WO2000068882A1 publication Critical patent/WO2000068882A1/ja
Priority to US10/023,625 priority patent/US6912449B2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management

Definitions

  • the present invention relates to an image processing device, a robot device, and an image processing method, and is suitably applied to, for example, a pet robot that operates like a quadruped.
  • an image processing system has been developed in which an image input device such as a video camera is connected to a general-purpose computer such as a personal computer workstation, and the image data input from the image input device is processed by the computer.
  • the computer of such an image processing system has a plurality of image processing objects that perform image processing such as color detection and motion detection, and performs a plurality of image processing on input image data. It has been done.
  • the computer of the image processing system temporarily stores the image data input from the image input device in the frame buffer, and then executes each image processing object from the frame buffer. It) transfers image data to a memory that can be directly accessed, or each image processing object directly accesses the frame buffer to read image data.
  • an embedded image processing device in which the image input device is pre-installed in a general-purpose computer has been developed.
  • Such an embedded image processing apparatus has a digital signal processor (DSP) for executing a specific image processing, and a single image data is directly written in a memory of the DSP. Image processing is performed at high speed.
  • DSP digital signal processor
  • the present invention has been made in view of the above points, and is intended to propose an image processing apparatus, a robot apparatus, and an image processing method that execute a plurality of independent image processings at high speed in parallel. is there.
  • address information for storing a plurality of image data sequentially input from the image input means in the storage means is generated, and each image data is generated based on the generated address information.
  • the address information of the storage means storing the image data to be read is stored in each image processing means. Notify each.
  • each image processing means can read out the image data to be read out from the direct storage means and perform predetermined image processing based on the notified address information, and thus a plurality of independent image data can be obtained with a simple configuration.
  • Standing image processing can be performed at high speed in parallel.
  • FIG. 1 is a schematic diagram showing an embodiment of a pet robot according to the present invention.
  • FIG. 2 is a block diagram showing a circuit configuration of the pet mouth bot.
  • FIG. 3 is a block diagram illustrating a configuration of the signal processing circuit.
  • FIG. 4 is a block diagram showing a configuration of the FBKZCDT.
  • FIG. 5 is a schematic diagram illustrating a data structure of a DMA list.
  • FIG. 6 is a schematic diagram showing the configuration of the software.
  • FIG. 7 is a flowchart showing an image processing method using a petropot.
  • FIG. 8 is a flowchart showing an image processing method using a petrobot.
  • FIG. 9 is a schematic diagram illustrating a configuration of an image processing object. BEST MODE FOR CARRYING OUT THE INVENTION
  • reference numeral 1 denotes a pet robot having an appearance of an animal as a whole; a head 2 corresponding to a head; a main body 3 corresponding to a torso; and feet 4A to 4D corresponding to feet. And a tail 5 corresponding to the tail.
  • the feet 4A-4D and the tail 5 By moving the head 2, the feet 4A-4D and the tail 5 with respect to the main body 3, it is like an actual four-legged animal. It is made to work.
  • the head 2 has a CCD (Charge Coup 1 ed Device) camera 10 corresponding to the eyes and constituting the image input means, a microphone 11 corresponding to the ears and collecting sound, and a mouth. , And the speakers 12 that emit sound are respectively mounted at predetermined positions.
  • the head 2 has a touch sensor 14 for detecting that a user's hand or the like has been touched, and a distance for detecting a distance to an obstacle located in front of the traveling direction of the pet robot 1.
  • Sensor 15 is installed.
  • a battery 16 is attached to the main body 3 at a position corresponding to the belly, and an electronic circuit (not shown) for controlling the operation of the entire petrobot 1 is housed inside the battery 16.
  • the CPU 20 controls the operation of the petrobot 1 as a whole, and transmits a control program stored in a flash ROM (Read Only Memory) 21 to the bus.
  • the control program stored in the memory card 22 inserted into a PC (Personal Computer) card slot (not shown) is read out from the PC 1 as needed via the PC 1 and the control program stored in the PC 2 Read through the power interface 23 and the bus B1 sequentially, and transfer the read control program to a DRAM (Dynamic R and om Access Memory) 24 as a storage means and store it. It has been done.
  • the CPU 20 controls each circuit of the set robot 1 by reading out and executing the control program transferred to the DRAM 24.
  • the signal processing circuit 30 is for performing various signal processing based on the control of the CPU 20, and as shown in FIG. 3, a host interface 31 for connecting to the CPU 20 (FIG. 2) and a flash memory.
  • ROM interface 32 for connecting to ROM2 1 (Fig. 2) and DRAM interface for connecting to DRAM24 (Fig. 2). And connected to the CPU 20, the flash ROM 21 and the DRAM 24 via the bus B1.
  • the signal processing circuit 30 has a bus arbiter 34 for performing arbitration (arbitration work for the right to use the bus).
  • the bus arbiter 34 is connected to the host interface 31 and the ROM interface 32 via the bus B2. And the DRAM interface 33.
  • the petrobot 1 is provided with potentiometers 40 to 40 N for detecting the driving amounts of actuators 17 i to 17 N for driving each joint, respectively.
  • 17 1 to 17 N , potentiometers 40 i to 40 N , touch sensor 14, distance sensor 15, microphone 11 and spike force 12 are each a signal processing circuit 30 via hubs 4 1 i to 41 ⁇ .
  • the serial bus host controller 4 5 is connected to the bus arbiter 34 via the Roh scan beta 3, the potentiometers 40 to 40 angle information detected by the New, it is detected by the touch Chisensa 1 4
  • the contact information and the distance information of the obstacle detected by the distance sensor 15 are sequentially transmitted to the DRAM 24 (FIG. 2) via the bus ⁇ 3, the bus arbiter 34, the bus B2, the DRAM interface 33, and the bus B1 (FIG. 2). 2)
  • the data is transferred to and memorized.
  • the FBK / C DT (Filter Bank / Color D etection) 46 is to be connected to the CCD camera 10 (Fig. 2), and the color of the image data captured by the CCD camera 10 is While recognizing the image data, the image data is divided and read into a plurality of resolutions, and the captured image data is transferred to the DRAM 24 (FIG. 2) via the bus arbiter 34 and the DRAM interface 33 and stored therein.
  • the IPE (Inner Product Engine) 47 is a two-dimensional digital filter.
  • image data is sequentially supplied from the DRAM 24 (FIG. 2) via the DRAM interface 33 and the bus arbiter 34, From the image data, an edge image that emphasizes the boundary between the floor and the wall or the wall and the wall is generated, and the generated edge is generated.
  • the image is returned to the DRAM 24 (FIG. 2) via the bus arbiter 34 and the DRAM interface 33, and is stored.
  • the DMA (Direct Memory Access) controller 48 functions as a bus master that manages data transfer. For example, the controller reads out image data from a buffer (not shown) of the FBK / CDT 46 and reads the image data from the DRAM 24 (see FIG. 2) or read image data from the DRAM 24 (Fig. 2) and transfer it to the IPE 47, and transfer the edge image that is the calculation result by the IPE 47 to the DRAM 24 (Fig. 2). Has been made.
  • DS P (D igital S ignal P rocessor) 4 9 sequentially via microphone 1 1 (Fig. 2) force, et hub 4 1 chi ⁇ 4 1 ,, 2, the serial bus phosphorylase Tofeldo La 45 and bus B 3
  • et hub 4 1 chi ⁇ 4 1 ,, 2, the serial bus phosphorylase Tofeldo La 45 and bus B 3 For example, when an audio signal indicating a user's command is input, predetermined data processing is performed on the audio signal, and audio information obtained as a result of the processing is sequentially transmitted via the bus router 34 and the DRAM interface 33. To the DRA M24 (Fig. 2) for storage.
  • the Iran bus 50 is an interface for connecting to a remote computer (not shown) such as a personal computer (PC), and is connected to the bus arbiter 34 via the bus B3. .
  • a peripheral interface 51 connected to a bus monitor 34 via a bus B3 is connected to a serial port 52 and a parallel port 53 for connection to a remote computer, and a battery 1 6 (Fig. 2) is connected to the battery manager 51.
  • the battery manager 51 transfers the battery remaining amount information notified from the battery 16 to the DRAM 24 via the peripheral interface 51, the bus arbiter 34 and the DRAM interface 1 33, and stores them.
  • the timer 55 serves as a clock inside the pet robot 1 and is connected to the bus arbiter 34 via the bus B3.
  • the CPU 20 autonomously determines the next operation based on various information developed in the DRAM 24, and generates a drive signal according to the determined operation. And the CPU 20 sends this drive signal to the actuator 17 i-l 7 N via the host interface 31 inside the signal processing circuit 30, the bus arbiter 34 and the serial bus host controller 45 and the hubs 41 j-41 N sequentially. Thereby, the cut robots 17 i to 17 N are driven to operate the cut robot 1 autonomously.
  • the CPU 20 generates audio information based on various types of information developed in the DRAM 24, sends the audio information to the DSP 49 via the host interface 31 and the bus arbiter 34 sequentially, and after converting an audio signal in the P 4 9, the audio signal serial bus host controller 45, sequentially through the hub 4 1 chi output from the speaker 1 2.
  • image data picked up by the CCD camera 10 is input to the FBK / CDT 46 of the signal processing circuit 30, and the FBK / CDT 46 performs predetermined image processing. After that, the data is transferred to the DRAM 24 via the bus arbiter 34 and the DRAM interface 33 in sequence under the control of the DMA controller 48.
  • the DMA controller 48 reads the DMA list generated by the CPU 20 from the DRAM 24 via the bus arbiter 34 and the DRAM interface 33 sequentially, and transfers the image data written in the DMA list. Image data is transferred based on information about the source and destination. Therefore, the DMA controller 48 can transfer the image data output from the FBK / CDT 46 to any position on the DRAM 24 by rewriting the DMA list by the CPU 20. As described above, the pet robot 1 performs high-speed data processing by effectively utilizing the cache function of the CPU 20 by transferring the image data to the DRAM 24 and developing the image data.
  • FIG. 4 shows the structure of FBKZCDT46 for the image data transfer method. A specific description will be given while using this.
  • the image data captured by the CCD camera 10 is composed of 8-bit parallel data, a clock signal, and a synchronization signal. After being input to the input image interface 60 of the FBKZ CDT 46 and converted into a predetermined format, Are supplied to the filter operation unit 61.
  • the CPU 20 determines various filter coefficients based on the control program stored in the DRAM 24, and sends the determined filter coefficients to the parameter storage unit 62 for storage.
  • the filter operation unit 61 performs a color operation on the supplied image data by performing a filter operation on the input image interface 61 using the filter coefficients stored in the parameter storage unit 62. It generates image data with multiple resolutions.
  • Buffers 63 A and 63 B having a storage capacity for storing one line of image data are provided at the subsequent stage of the filter operation unit 61, and the filter operation unit 61 converts the generated image data for each line.
  • the data is sent alternately to the buffers 63A and 63B and accumulated.
  • the DMA interface 64 reads one line of image data from the other buffer 63 while storing one line of image data in one of the buffers 63A and 63B, and By transferring the read image data of one line to the DRAM 24 based on the instruction of the DMA controller 48, a plurality of image data are sequentially transferred to the DRAM 24.
  • the FBKZCDT46 Since the buffers 63A and 63B only have a storage capacity of two lines in total, the FBKZCDT46 has a small storage capacity and a simple configuration. Incidentally, such transfer of image data is performed by the DMA controller 48 functioning as a bus master. That is, when one line of image data is accumulated in one of the buffers 63A and 63B, the DMA interface 64 sends a transfer request signal called a DMA request to the DMA controller 48 (FIG. 3). Is sent.
  • the DMA controller 48 When a DMA request is supplied, the DMA controller 48 (FIG. 3) first obtains the right to use the buses B1 to B3, and then the DMA notified by the CPU 20. Reads the DMA list from DRAM 24 ( Figure 2) based on the list address.
  • the DMA controller 48 (FIG. 3) sequentially generates addresses on the DRAM 24 (FIG. 2) to which the image data is transferred based on the DMA list, and issues write signals to the buses B1 to B3. I do.
  • the FBK / CDT 46 reads out the image data stored in the buffers 63A and 63B and transmits the image data to the bus B3 sequentially in synchronization with the write signals to the buses B1 to B3.
  • the image data output from the FBK / CDT 46 is output from the FBK / CDT 46 and simultaneously written into the DRAM 24, the image data is transferred at a very high speed.
  • the DMA controller 48 can transfer the image data to an arbitrary position on the DRAM 24.
  • the FBK / CDT 46 cancels the DMA request to the DMA controller 48 and terminates the transfer of the image data.
  • the DMA controller 48 writes information such as the data amount of the image data transferred until the timing when the DMA request was canceled to the DMA list, and the bus B1! Release 33. Then, when the DMA request is supplied again, the DMA controller 48 reads the above-described DMA list from the DRAM 24 and performs the transfer following the previous one.
  • FIG. 5 shows the data structure of the DMA list 70.
  • the DMA list 70 is composed of 10-word data with 32 bits of data as one word.
  • the default 'source' start address 73 is the starting address of the transfer source, and the default destination 'start' address is the default address.
  • ) 74 indicates the start address of the transfer destination.
  • Default Transfer Size 75 indicates the transfer amount of image data transferred at one time.
  • Loop rice Bullet (Loopen) 76 indicates a flag for repeatedly using this DMA list
  • byte (Byte) 77 indicates a flag for determining the unit of transfer
  • Iomem 7 Numeral 8 indicates a flag indicating that image data is transferred from a transfer source to which an address is not assigned to a transfer destination to which an address is assigned.
  • a bus bit (Busout) 79 indicates a flag indicating whether the image data is transferred from the DRAM 24 or the DRAM 24, and an in enable (Inten) 80 indicates that the transfer is completed. Shows the flag that generates an interrupt.
  • Source (address) Skip (S ource address S kip) 8 1 is the default 'transfer. Size of the address to be skipped at the source after transferring the amount of image data described in size 75. This indicates that only a partial area in the image can be extracted and transferred according to the set address size. Destination “Address” Skip 8 2 indicates the size of the address to be skipped at the transfer destination, and is displayed in a part of the image according to the size of the set address. You can fit another image.
  • Source / destination 'end' address (Source / ⁇ es-tinanationdEndAddres ss) 83 indicates the end address of the destination or source.
  • DMA list Pointer (N ext )
  • DMAListPointrer is used to describe the address of the DMA list to be read next.
  • the current 'source' start address (Current Source Address) 85 indicates the start address of the transfer source described when the transfer is aborted.
  • the current 'destination' start address (Current Destination Address) 86 indicates the start address of the transfer destination described when the transfer is aborted.
  • Current 'Status' 87 is used to write the transfer amount when the transfer is aborted halfway during the transfer as described in Default Transfer Size 75. Area.
  • Busy 88 indicates a flag that is set when the transfer is aborted, and Done Count 89 is for counting up each time the transfer is completed. is there.
  • Device 'Driver Layer 101 is located at the lowest layer of this control program.
  • it is a software group that realizes an interface with hardware, such as an FBK / CDT device and driver.
  • the device consists of a set of dry cells.
  • the robotic server object 103 is a layer of software that is located in the upper layer of the device, which is a layer of software that provides an interface for accessing the hardware of the pet robot 1.
  • Char's robot 104 a manager consisting of software that manages switching of power supply etc.
  • ⁇ Manager 105 other various devices' Devices consisting of software that manages drivers • Drivers ⁇ Manager 1 06. It is composed of a design robot 107, which is a software group that manages the mechanism of the pet robot 1.
  • the “Mid-no-ware” layer 108 is located on the upper layer of the mouth object “Server object 103”, and is composed of software groups that perform image processing and audio processing.
  • the application layer 109 is composed of a group of software that determines the operation to be performed by the port 1 based on the processing result processed by the group of software that configures the middle layer 108. ing.
  • the manager object 110 is composed of the object manager 111 and the service manager 112, of which the object manager 111 is a robotic 'server' object. 1 03, Middle A layer 108 and an application ⁇ ⁇ A group of software that manages the start and end of the software that constitutes the layer 109.
  • the service manager 112 stores the connection files stored in the memory card 22. It is a group of software that manages the connection of each object based on the connection information between the described objects.
  • step SP 2 entered from step SP 1, the CPU 20 activates the FBK / CDT driver 102 A to initialize the FBK / CDT 46.
  • step SP3 the CPU 20 activates the robotic 'server' object 103 and activates the virtual 'robot 104.
  • the virtual robot 104 generates a plurality of shared memories 120 for storing image data on the DRAM 24, and then stores image attributes such as image size in the FBK / CDT driver 102A.
  • image attributes such as image size in the FBK / CDT driver 102A.
  • the CPU 20 sequentially activates the image processing objects constituting the middleware layer 108.
  • the storage capacity of the generated shared memory 120 can be easily changed according to the instruction of the virtual robot 104.
  • step SP4 the virtual robot 104 notifies the address of the desired shared memory 120 among the plurality of shared memories 120 generated on the DRAM 24 to the FBKZCDT driver 102A, and A read request requesting that image data be transferred to the shared memory 120 of the address is issued to the FBKZCDT driver 102A.
  • step SP5 the FB KZCDT driver 102A forms a data transfer means together with the virtual robot 104 and the DMA controller 48, and Upon receiving the load request, a DMA list for transferring image data to the designated shared memory 120 is generated and stored in the DRAM 24. At that time, the FB CDT driver 102A notifies the DMA controller 48 of the address of the DMA list 121 stored in the DRAM 24, and then outputs image data to the FBK / CDT 46. Allow that.
  • step SP6 the FBKZCDT46 transfers the image data for one field to the designated shared memory 120. 8 7 70 This generates an interrupt for driver 102A and starts software called an interrupt handler.
  • step SP7 the interrupt handler notifies the virtual 'robot 104 that the transfer of the image data has been completed.
  • step SP8 the virtual robot 104 searches the shared memory area where the reference count counter is 0, and then in step SP9, the FBK / CDT is used as the address of the shared memory 120 to be transferred. After passing the driver 1 ⁇ 2 A and issuing a read request, the process returns to step SP 5 and repeats the above operation.
  • the CPU 20 executes the processing according to the flowchart shown in FIG. 8 in parallel with the processing shown in FIG. That is, after starting this flowchart in step SP0, the CPU 20 determines in subsequent step SP10 whether or not the activation of the image processing objects constituting the middle 'ware' layer 108 has been completed. If it is determined that the activation of the image processing object has been completed, the process proceeds to step SP11. If it is determined that the activation has not been completed, the process waits until the activation has been completed.
  • step SP11 the service of the manager object 110.
  • the manager 112 is the middleware.
  • each image is processed. Notify the processing object of the image processing object of the connection destination, and open a communication path between each image processing object.
  • the service manager 112 parses the image processing object 125 for color detection, the image processing object 126 for motion detection, and the image processing object 127 for edge detection.
  • the service manager 112 connects the image processing object 128 for calculating the center of gravity to the image processing object 125 for color detection, and the image processing object 122 for calculating the center of gravity calculates the image processing object for motion detection. Connect to object 126.
  • the service manager 112 hierarchically connects the image processing object 130 for obstacle detection and the image processing object 131 for coordinate transformation to the image processing object 127 for edge detection. .
  • the connection between such image processing objects can be changed, and various processing can be performed by changing the connection relationship between the image processing objects.
  • step SP13 when the connection between the image processing objects is completed, the service manager 112 sends a start signal to each of the image processing objects.
  • each image processing object sends a data request signal to a lower-layer connected image processing object based on the connection information described in the connection file.
  • the image processing object 125 for color detection, the image processing object 126 for motion detection and the image processing object 127 for edge detection are different from each other in the image data sequentially supplied from the FBK / CDT 46.
  • the virtual robot 104 grasps the image data to be read by each of the image processing objects 125 to 127 among the supplied image data.
  • step SP 14 when the virtual robot 104 receives a data request signal from each of the image processing objects 125 to 127, it operates as a notifying means, and operates as each of the image processing objects 125 to 125.
  • IDentification (that is, address information) is notified to each of the image processing objects 125 to 127.
  • the virtual robot 104 uses the internal reference count counter to send the image processing object 1 to each of the IDs notified to the image processing objects 125 to 127. twenty five The number of ⁇ 1 2 7 is counted and the counted number is stored.
  • the virtual robot 104 operates as transfer control means, and the shared memory 120 of an ID whose count by the reference count counter is not 0 is stored in the image data supplied from the FBK / CDT 46.
  • the shared memory 120 By overwriting image data in the shared memory 120 with a count of 0 and storing it sequentially without overwriting, there is a possibility that each image processing object 125 to 127 will be read out Avoids accidental erasure of image data.
  • each of the image processing objects 125 to 127 reads image data from the shared memory to which the notified ID is allocated.
  • each of the image processing objects 125 to 126 may read image data stored in the same shared memory 120 in some cases.
  • the shared memory 120 is a read-only memory
  • the image processing objects 125 to 127 can read image data without interfering with each other.
  • each of the image processing objects 125 to 127 reads the image data from the desired shared memory 120, and then, in step SP16, executes a predetermined image processing for the read image data. The processing is performed, and the processing result is sent to the upper layer objects 128 to 130, and in step SP17, the image processing for the data request signal is terminated.
  • each of the image processing objects 125 to 127 sends a data request signal for requesting the next image data to the virtual robot.
  • step SP19 when the virtual robot 104 receives the data request signal, the virtual robot 104 stores the data corresponding to the ID notified to the image processing objects 125 to 127 that transmitted the data request signal. The counted number of the reference count measuring counter is decremented each time the data request signal is supplied. When the count becomes 0, the virtual robot 104 protects the image data stored in the shared memory 120 to which the ID whose count became 0 is assigned. And cancel Return to step SP 14 and repeat the operation.
  • the color detection image processing object 125 detects the color from the read image data, and sends the processing result to the center-of-gravity calculation image processing object 128 to calculate the position of the detected color.
  • the motion detection image processing object 126 detects the motion area from the image data, and sends the processing result to the center of gravity calculation image processing object 129 to determine the position and size of the detected motion area. Let it be calculated.
  • the edge detection image processing object 127 detects edges from the image data, sends the processing result to the obstacle detection image processing object 130 to calculate the position of the obstacle, and then calculates the coordinates. In the conversion image processing object 131, the position of the obstacle is coordinate-transformed. Next, the process returns to step SP 18 to perform the next process.
  • each of the image processing objects 125 to 127 reads image data from the shared memory 120 generated on the DRAM 24, the image processing objects do not depend on the CCD camera 10.
  • a general-purpose image processing object can be realized, and therefore, various image processing can be easily performed by combining a plurality of general-purpose image processing objects.
  • the virtual robot 104 sequentially designates the rewritable shared memory 120 out of the plurality of shared memories 120 generated on the DRAM 24, and An address of 0 is sent to the FBKZCDT driver 102A.
  • the FBK / CDT driver 102 A sequentially generates a DMA list based on the specified address of the shared memory 120, and stores the DMA list in the DRAM 24.
  • the DMA controller 48 sequentially transfers the image data from the FBKZCDT 46 to the designated shared memory 120 based on the DMA list developed in the DRAM 24. In this way, the image data obtained from the CCD camera 10 is transferred to the DRAM 24 which can be directly accessed by each of the image processing objects 125 to 127, thereby reducing the time required for transferring the image data. And secure memory management Performance can be improved.
  • the virtual robot 104 manages image data to be read by each of the image processing objects 125 to 127 out of the image data stored in each of the shared memories 120. are doing. Therefore, when the virtual robot 104 receives the data request signals sent from the respective image processing objects 125 to 127, the virtual robot 104 reads the data request signals to the respective image processing objects 125 to 127. The address of the shared memory 120 in which the target image data is stored is notified.
  • Each of the image processing objects 125 to 127 reads image data from the shared memory 120 based on the notified address, and performs predetermined image processing on the read image data.
  • the virtual robot 104 sends an image processing object 125 to the shared memory 120 that stores the image data to be read, and notifies the shared memory 120 of the address of the shared memory 120.
  • FB KZ CDT 4 6 is stored in the shared memory 120 until the next data request signal is supplied from all of the stored image processing objects 125 to 127. Prohibits transfer of image data from.
  • the shared memory 120 storing the image data to be read is stored.
  • each image processing object 125 to 127 is stored in the DRAM 24 based on the notified ID.
  • the read image data can be read directly, and a plurality of independent image processes can be respectively executed at high speed in parallel with a simple configuration.
  • the present invention can be applied to pet robots.
  • the present invention can be applied to an image processing apparatus that performs a plurality of processes simultaneously in parallel.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Manipulator (AREA)

Description

明 細 書 画像処理装置及びロボット装置並びに画像処理方法 技術分野
本発明は画像処理装置及びロボッ ト装置並びに画像処理方法に関し、 例えば 4 足動物のように動作するぺッ トロボットに適用して好適なものである。 背景技術
従来、 パーソナルコンピュータゃヮ一クステーションのような汎用の計算機に ビデオカメラなどの画像入力装置を接続し、 当該画像入力装置から入力される画 像データを計算機において処理する画像処理システムが開発されている。 このよ うな画像処理システムの計算機は、 例えば色検出や動き検出などの画像処理を行 う複数の画像処理ォブジヱク トを有し、 入力される画像データに対して複数の画 像処理を施すようになされている。
このため画像処理システムの計算機では、 画像入力装置から入力される画像デ ータを一旦フレームバッファに蓄積した後、 当該フレームバッファから各画像処 理ォブジェク トを実行する C PU (C e n t r a l P r o c e s s i n g Un i t ) が直接アクセスし得るメモリに画像データを転送、 又は各画像処理ォ ブジェク トが直接フレームバッファにアクセスして画像デ一タを読み出すように なされている。
また、 汎用の計算機に画像入力装置を接続してなる画像処理システム以外には 、 汎用の計算機に予め画像入力装置を組み込んだ組み込み型の画像処理装置が開 発されている。 このような組み込み型の画像処理装置は、 特定の画像処理を実行 するための DS P (D i g i t a l S i g n a l P r o c e s s o r) を有 し、 当該 DS Pのメモリに画像データを直接書き込むことにより単一の画像処理 を高速に行うようになされている。 ところで汎用の計算機に画像入力装置を接続してなる画像処理システムでは、 c P Uが実行する画像処理オブジェク トの数に比例して、 画像データの転送にか かる時間が増大してしまい、 画像処理に時問がかかる問題があった。 因みに、 画 像データをフレームバッファに一旦蓄積した後にメモリに転送する方法としては
、 例えば特開平 8— 2 9 7 5 8 5号公報に開示されている方法があり、 この方法 では、 画像データを一旦フレームバッファに蓄積する分、 転送速度が遅くなると 共に、 C P Uがデータ転送を行っているため、 データ転送が終わるまで C P Uが 他の処理を実行することができない問題があった。 また、 各画像処理オブジェク トが直接フレームバッファにアクセスして画像データを読み出す方法では、 デー タのアクセスが遅い上に、 C P Uがハ一ドウエアであるフレームバッファに直接 アクセスするため移植性が低く、 データ保護の安全性に欠ける問題があった。 一方、 組み込み型の画像処理装置では、 特定の画像処理しか行えない D S Pを 用いていることから、 複数の画像処理を同時に実行させることや、 ハードウェア に依存しないプログラムを記述することが困難であった。 発明の開示
本発明は以上の点を考慮してなされたもので、 複数の独立した画像処理をそれ ぞれ並行して高速に実行する画像処理装置及びロボッ ト装置並びに画像処理方法 を提案しょうとするものである。
かかる課題を解決するため本発明においては、 画像入力手段から順次入力され る複数の画像データを記憶手段に記憶するためのア ドレス情報をそれぞれ生成し 、 当該生成したァドレス情報に基づいて各画像データを順次記憶手段に転送して 記憶し、 複数の画像処理手段からそれぞれ読み出し対象の画像データが要求され ると、 当該読み出し対象の画像データが格納されている記憶手段のァドレス情報 を各画像処理手段にそれぞれ通知する。 これにより各画像処理手段は、 通知され たァドレス情報に基づいて読み出し対象の画像データをそれぞれ直接記憶手段か ら読み出して所定の画像処理を施すことができ、 かく して簡易な構成で複数の独 立した画像処理をそれぜれ並行して高速に実行し得る。 図面の簡単な説明
図 1は、 本発明によるぺッ トロボッ トの一実施の形態を示す略線図である。 図 2は、 ペッ ト口ボッ トの回路構成を示すブロック図である。
図 3は、 信号処理回路の構成を示すブロック図である。
図 4は、 F BKZCDTの構成を示すブロック図である。
図 5は、 DMAリス トのデータ構造を示す略線図である。
図 6は、 ソフ トウェアの構成を示す略線図である。
図 7は、 ぺッ トロポッ トによる画像処理方法を示すフローチヤ一トである。 図 8は、 ぺッ トロボッ トによる画像処理方法を示すフロ一チヤ一トである。 図 9は、 画像処理ォブジュク トの構成を示す略線図である。 発明を実施するための最良の形態
以下図面について、 本発明の一実施の形態を詳述する。
( 1 ) ペッ トロボッ トの構成
図 1において、 1は全体として動物の外観形状を有するぺッ トロボッ トを示し 、 頭に相当する頭部 2と、 胴体に相当する本体部 3と、 足に相当する足部 4 A〜 4 Dと、 尻尾に相当する尻尾部 5とを連結することによって構成され、 本体部 3 に対して頭部 2、 足部 4 A〜4 D及び尻尾部 5を動かすことによって実際の 4足 動物のように動作させるようになされている。
頭部 2には、 目に相当し、 画像入力手段を構成する CCD (C h a r g e C o u p 1 e d D e v i c e ) カメラ 1 0と、 耳に相当し、 音声を集音するマ イク 1 1 と、 口に相当し、 音声を発するスピーカ 1 2とがそれぞれ所定位置に取 り付けられている。 また頭部 2には、 ユーザの手などが接触されたことを検出す るためのタツチセンサ 1 4と、 ペッ トロボッ ト 1の進行方向に対して前方に位置 する障害物までの距離を検出する距離センサ 1 5とが取り付けられている。 本体部 3には 腹に相当する位置にバッテリ 1 6が取り付けられると共に、 そ の内部にペッ トロボッ ト 1全体の動作を制御するための電子回路 (図示せず) 等 が収納されている。
足部 4 A〜 4 Dの関節部分、 足部 4 A〜 4 Dと本体部 3を連結する関節部分、 本体部 3と頭部 2を連結する関節部分、 本体部 3と尻尾部 5を連結する関節部分 などは、 それぞれのァクチユエ一タ 1 7 〜 1 7Nによって連結されており、 本 体部 3内部に収納される電子回路の制御に基づいて駆動するようになされている 。 このようにぺットロボッ ト 1は、 各ァクチユエータ 1 7丄〜 1 7 Nを駆動させ ることにより、 頭部 2を上下左右に振らせたり、 尻尾部 5を振らせたり、 足部 4 A〜 4 Dを動かして歩かせたり走らせたりして、 実際の 4足動物のような動作を 行わせる。
(2) ペッ トロボッ トの回路構成
ここでぺッ トロボッ ト 1の回路構成を図 2に示す。 CPU (C e n t r a l P r o c e s s i n g Un i t) 20は、 ペッ トロボッ ト 1全体の動作を制御 するためのものであり、 フラッシュ ROM (R e a d On l y Me mo r y ) 2 1に格納されている制御プログラムをバス B 1を介して必要に応じて読み出 すと共に、 PC (P e r s o n a l C omp u t e r) カードスロ ッ ト (図示 せず) に挿入されたメモリ力一ド 2 2に格納されている制御プログラムを P C力 ―ドインターフェイス 23及びバス B 1を順次介して読み出し、 これら読み出し た制御プログラムを記憶手段としての D RAM (Dy n am i c R a n d om A c c e s s Me mo r y) 24に転送して記憶するようになされている。 C PU 20は、 この DRAM 24に転送された制御プログラムを読み出して実行す ることによりぺットロボッ ト 1の各回路を制御している。
信号処理回路 30は、 CPU 20の制御に基づいて各種信号処理を行うための ものであり、 図 3に示すように、 C PU20 (図 2) に接続するためのホストイ ンターフェイス 3 1 と、 フラッシュ ROM2 1 (図 2) に接続するための ROM インターフェイス 3 2と、 DRAM24 (図 2 ) に接続するための D R AMイン タ一フェイス 33とを有し、 バス B 1を介して C PU 20、 フラッシュ ROM2 1及び D RAM 24に接続されている。
信号処理回路 30は、 アービトレーション (バス使用権の調停作業) を行うた めのバスアービタ 34を有し、 当該バスアービタ 34は、 バス B 2を介してホス トインタ一フェイス 3 1、 ROMィンターフェイス 3 2及び D RAMィンタ一フ ェイス 33に接続されている。
また図 2において、 ペッ トロボッ ト 1には、 各関節部分を駆動するァクチユエ —タ 1 7 i〜 1 7Nにおける駆動量を検出するためのポテンショメータ 40 〜4 0Nがそれぞれ設けられ、 ァクチユエ一タ 1 71〜 1 7N、 ポテンショメータ 40 i 〜40 N、 タツチセンサ 1 4、 距離センサ 1 5、 マイク 1 1及びスピ一力 1 2 がそれぞれハブ 4 1 i 〜4 1 χ を介して信号処理回路 30のシリアルバスホスト コントローラ 4 5 (図 3) にツリー状に接続されている。 図 3に示すように、 シ リアルバスホストコントローラ 4 5は、 ノ ス Β 3を介してバスアービタ 34に接 続され、 各ポテンショメータ 40 〜40Νによって検出された角度情報、 タッ チセンサ 1 4によって検出された接触情報、 距離センサ 1 5によって検出された 障害物の距離情報をバス Β 3、 バスアービタ 34、 バス B 2、 DRAMインタ一 フェイス 3 3及びバス B 1 (図 2) を順次介して DRAM24 (図 2) に転送し て記憶するようになされている。
F B K/C DT (F i l t e r B a n k/C o l o r D e t e c t i o n ) 46は、 CCDカメラ 1 0 (図 2) に接続されるためのものであり、 当該 CC Dカメラ 1 0によって撮像された画像データの色認識を行いながら複数の解像度 に分けて取り込み、 当該取り込んだ画像データをバスアービタ 34及び DRAM インタ一フェイス 3 3を順次介して DRAM24 (図 2) に転送して記憶する。
I P E ( I n n e r P r o d u c t En g i n e) 4 7は、 2次元ディジ タルフィルタでなり、 DRAM 24 (図 2) から D R AMインタ一フェイス 3 3 及びバスアービタ 34を順次介して画像データが供給されると、 当該画像データ から床と壁や壁と壁の境界を強調したエッジ画像を生成し、 当該生成したエッジ 画像をバスアービタ 34及び DRAMィンターフェイス 3 3を順次介して DRA M24 (図 2) に戻して記憶する。
DMA (D i r e c t Me mo r y A c c e s s) コン トローラ 48は、 データの転送を司るバスマスタとして機能するためのものであり、 例えば FBK /CDT46のバッファ (図示せず) から画像データを読み出して DRAM24 (図 2) に転送したり、 DRAM 24 (図 2 ) から画像データを読み出して I P E 4 7に転送し、 当該 I P E 4 7による演算結果であるエッジ画像を D R AM 2 4 (図 2) に転送するようになされている。
DS P (D i g i t a l S i g n a l P r o c e s s o r ) 4 9は、 マイ ク 1 1 (図 2) 力、らハブ 4 1 χ 〜 4 1、, 2 、 シリアルバスホス トコントロー ラ 45及びバス B 3を順次介して例えばユーザの指令を示す音声信号が入力され ると、 当該音声信号に対して所定のデータ処理を施し、 その処理結果でなる音声 情報をバスァ一ビタ 34及び DRAMィンターフェイス 3 3を順次介して DRA M24 (図 2) に転送して記憶する。
シリア^^バス 50は、 パ一ソナ Λ ^コンピュータ (PC) などのリモートコンビ ユータ (図示せず) に接続するためのインタ一フェイスであり、 バス B 3を介し てバスアービタ 34に接続されている。 同様にバス B 3を介してバスァ一ビタ 3 4に接続されるペリフエラルインターフェイス 5 1は、 リモ一トコンピュータに 接続するためのシリアルポート 52及びパラレルポ一ト 53に接続されると共に 、 バッテリ 1 6 (図 2) に接続するためのバッテリマネージャ 5 1に接続されて いる。 ノ ッテリマネージャ 5 1は、 バッテリ 1 6から通知されるバッテリ残量情 報をペリフェラルインターフェイス 5 1、 バスアービタ 34及び DRAMィンタ 一フェイス 3 3を順次介して DRAM 24に転送して記憶する。 タイマー 55は 、 ペットロボット 1内部の時計としての役割を果たすものであり、 バス B 3を介 してバスアービタ 34に接続されている。
C PU 20は、 DRAM24に展開されている各種情報に基づいて自律的に次 の動作を決定し、 当該決定した動作に応じた駆動信号を生成する。 そして C PU 20は、 この駆動信号を信号処理回路 30内部のホストインターフェイス 3 1、 バスアービタ 34及びシリアルバスホストコントローラ 45並びにハブ 4 1 j〜 4 1 Nを順次介してァクチユエータ 1 7 i〜l 7 Nに送出することにより、 当該各 了クチユエ一タ 1 7 i〜 1 7 Nを駆動して当該ぺッ トロボット 1を自律的に動作 させる。
なお C PU 20は、 DRAM 24に展開されている各種情報に基づいて音声情 報を生成し、 当該音声情報をホストインターフェイス 3 1及びバスアービタ 34 を順次介して DS P 4 9に送出し、 当該 DS P 4 9において音声信号に変換した 後、 当該音声信号をシリアルバスホス トコントローラ 45、 ハブ 4 1 χを順次介 してスピーカ 1 2から出力する。
(3) 画像データの転送
ここでは CCDカメラ 1 0から入力される画像データを DRAM 24に転送す る転送方法について説明する。 上述した図 2及ぴ図 3に示すように、 CCDカメ ラ 1 0によって撮像された画像データは、 信号処理回路 30の FBK/CDT4 6に入力され、 当該 F B K/CDT 46において所定の画像処理が施された後、 DMAコントロ一ラ 48の制御に基づいてバスアービタ 34及び DRAMインタ 一フェイス 3 3を順次介して DRAM 24に転送される。
ところで DMAコントローラ 48は、 バスアービタ 34及び D RAMィンタ一 フェイス 3 3を順次介して DRAM 24から、 C PU 20によって生成された D MAリストを読み出し、 当該 DMAリス トに書かれている画像データの転送元や 転送先に関する情報に基づいて画像データの転送を行うようになされている。 従 つて、 DMAコントローラ 48は、 C PU 20が DMAリス トを書き換えること によって、 F BK/CDT46から出力される画像データを DRAM 24上の任 意の位置に転送することができる。 このようにペットロボッ ト 1では、 画像デ一 タを DRAM 24に転送して展開することにより、 C PU 20のキヤッシュ機能 を有効に利用して高速なデータ処理を行うようになされている。
以下、 画像データの転送方法について F BKZCDT46の構成を示す図 4を 用いながら具体的に説明する。 CCDカメラ 1 0によって撮像された画像データ は、 8ビッ トのパラレルデータとクロック信号と同期信号とからなり、 F BKZ CDT 46の入力画像インターフェイス 60に入力されて所定のフォーマツ トに 変換された後、 フィルタ演算部 6 1に供給される。
ところで C PU 20は、 DRAM 24に記憶されている制御プログラムを基に 各種フィルタ係数を決定し、 当該決定したフィルタ係数をパラメータ記憶部 6 2 に送出して記憶するようになされている。 フィルタ演算部 6 1は、 このパラメ一 タ記憶部 6 2に記憶されているフィルタ係数を用いて入力画像ィンターフェイス 6 1にフィルタ演算を施すことにより、 供給された画像データの色認識を行いな がら複数の解像度の画像データを生成する。
フィルタ演算部 6 1の後段には 1 ライン分の画像データを記憶する記憶容量を 有するバッファ 63 A及び 63 Bがそれぞれ設けられており、 フィルタ演算部 6 1は、 生成した画像データを 1ライン毎に交互にバッファ 63 A及び 63 Bに送 出して蓄積していく。 その際、 DMAインターフェイス 64は、 バッファ 63 A 及び 63 Bのうち一方のバッファ 6 3に 1ライン分の画像データを蓄積している 間に他方のバッファ 63から 1ライン分の画像データを読み出し、 当該読み出し た 1ライン分の画像デ一タを DMAコントローラ 48の指示に基づいて D RAM 24に転送することにより、 複数の画像データを順次 DRAM 24に転送する。 なおバッファ 63 A及び 6 3 Bは、 合計して 2ライン分の記憶容量を持つだけな ので、 記憶容量が少なく、 簡易な構成の F BKZCDT46を実現している。 ところでこのような画像データの転送は、 バスマスタとして機能する DMAコ ントローラ 4 8によって行われる。 すなわち DMAインタ一フェイス 64は、 バ ッファ 63 A及び 63 Bのうちいずれか一方に 1ライン分の画像データが蓄積さ れると、 DMAコントローラ 48 (図 3) に対して DMAリクエストと呼ばれる 転送要求信号を送出する。
DMAコントローラ 48 (図 3) は、 DMAリクエストが供給されると、 まず バス B 1〜B 3の使用権を獲得し、 次いで C PU 20によって通知される DMA リス トのアドレスを基に D RAM 24 (図 2) から DM Aリス トを読み出す。
DMAコントローラ 48 (図 3) は、 この DMAリストに基づいて画像データ の転送先である DRAM 24 (図 2) 上のア ドレスを順次生成し、 バス B 1〜B 3に対して書込み信号を発行する。 F BK/CDT46は、 このバス B 1〜B 3 に対する書込み信号に同期して、 バッファ 63 A及び 63 Bに蓄積されている画 像データを読み出してバス B 3に順次送出する。
この F BK/CDT46から出力された画像データは、 FBK/CDT46か ら出力されると同時に DRAM 24に書き込まれることから、 画像データの転送 は非常に高速に行われる。 ところで、 画像データの転送先に関する設定は、 DM Aリス トによって行われることから、 DMAコントロ一ラ 48は画像データを D RAM 24上の任意の位置に転送し得るようになされている。
そして F B K/C DT 46は、 バッファ 63 A及び 63 Bに蓄積されていた画 像データが無くなると、 DMAコントロ一ラ 48に対する DMAリクエストを取 り下げて画像データの転送を打ち切る。 これを受けて DMAコントローラ 4 8は 、 DMAリクエストが取り下げられたタイミングまでに転送した画像データのデ ータ量などの情報を DMAリス トに書き込んで、 バス B 1〜! 33を解放する。 そ して DMAコントローラ 4 8は、 再び DMAリクエストが供給されると、 上述の DMAリストを DRAM 24から読み出して前回の続きの転送を行う。
ここで図 5は DMAリス ト 70のデータ構造を示す。 この DMAリス ト 70は 、 3 2ビットのデータを 1ワードとして 1 0ヮ一ドのデータから構成されている 。 デフォルト ' ソース ' スタート ' アドレス (D e f a u l t S o u r c e S t a r t Ad d r e s s) 73は、 転送元の開始ァドレスを示し、 デフオル ト ·デスティネィシヨン ' スタート ' ア ドレス (D e f a u l t D e s t i - n a t i o n S t a r t Ad d r e s s) 74は、 転送先の開始ァドレスを 示す。
デフオルト ' トランスファ一 ·サイズ (D e f a u l t T r a n s f e r S i z e) 75は、 1回で転送される画像データの転送量を示す。 ループイネ一 ブル (L o o p e n) 7 6は、 この DMAリス トを繰り返し使うためのフラグを 示し、 バイ ト (B y t e ) 7 7は、 転送の単位を決定するフラグを示し、 アイォ 一メモ ( I o m e m) 7 8は、 ア ドレスが割り当てられていない転送元からアド レスが割り当てられている転送先に画像データを転送することを表すフラグを示 す。 バスァゥ ト (B u s o u t ) 7 9は、 画像データが D RAM 24から転送さ れるのか又は DRAM 24に転送されるのかを表すフラグを示し、 イントイネー ブル ( I n t e n) 8 0は、 転送が終了したときに割り込みを発生するフラグを 示す。
ソ一ス ' ア ドレス . スキップ (S o u r c e A d d r e s s S k i p ) 8 1は、 デフォルト ' トランスファー . サイズ 7 5に記述された転送量の画像デー タを転送した後に転送元において読み飛ばすァドレスの大きさを示し、 設定され たァドレスの大きさに応じて画像中の一部の領域のみを抽出して転送することが できる。 デスティネイション ' ア ドレス ' スキップ (D e s t i n a t i o n Ad d r e s s S k i p) 8 2は、 転送先において読み飛ばすア ドレスの大き さを示し、 設定されたァドレスの大きさに応じて画像中の一部の領域に別の画像 をはめ込むことができる。
ソース/デスティネィシヨ ン ' エンド ' ァ ドレス (S o u r c e /Ό e s - t i n a t i o n E n d A d d r e s s ) 8 3は、 転送先又は転送元の終了 ァ ドレスを示す。 ネクス ト . DMAリス ト .ポィンタ (N e x t
DMA L i s t P o i n t e r ) 8 4は、 次に読み出す DMAリス トのァ ドレ スを記述するためのものである。
カレン ト ' ソース ' スタート ' ア ドレス (C u r r e n t S o u r c e S t a r t A d d r e s s ) 8 5は、 転送を途中で打ち切ったときに記述され る転送元の開始ァドレスを示す。 カレント 'デスティネィシヨン 'スタート ·ァ ^レス (C u r r e n t D e s t i n a t i o n S t a r t A d d r e s s ) 8 6は、 転送を途中で打ち切ったときに記述される転送先の開始ァ ドレスを示す。 カレン ト ' スティタス (Cu r r e n t S t a t u s) 8 7は、 デフオルト • トランスファー 'サイズ 75に記述された転送量で転送されている間に、 当該 転送が途中で打ち切られたときの転送量を書き込むための領域である。 ビジー ( B u s y) 88は、 転送を途中で打ち切ったときに立てられるフラグを示し、 ダ ン 'カウント (Do n e C o u n t) 8 9は、 転送が終了する毎にカウントァ ップするためのものである。
(4) ソフトウエアの構成
ここではぺッ トロボッ ト 1の動作を制御する制御プログラム 1 00のソフトゥ エア構成を図 6を用いて説明する。 デバイス ' ドライバ · レイヤ 1 0 1は、 この 制御プログラムの最下位層に位置し、 例えば F BK/CDTのデバイス . ドライ バのような、 ハードウエアとのインターフェイスを実現するためのソフトウエア 群でなるデバイス · ドライノく 'セッ ト 1 0 2によって構成されている。
ロボティック .サーバ ·オブジェク ト 1 03は、 デバイス . ドライノく . レイヤ 1 0 1の上位層に位置し、 ペッ トロボット 1のハードウエアにアクセスするため のインターフェイスを提供するソフトウエア群でなるバ一チャル ' ロボッ ト 1 0 4、 電源の切換えなどの管理をするソフトウエア群でなるパヮ一 ·マネージャ 1 05、 他の種々のデバイス ' ドライバを管理するソフトウェア群でなるデバイス • ドライ ノく ·マネージャ 1 06、 ペッ トロボッ ト 1の機構を管理するソフトウェ ァ群でなるデザィンド · ロボッ ト 1 0 7によって構成されている。
ミ ドノレ · ウェア ' レイヤ 1 08は、 口ボテイツク 'サ一バ ·オブジェク ト 1 0 3の上位層に位置し、 画像処理や音声処理を行うソフトウユア群などによって構 成されている。 アプリケ一ション · レイヤ 1 09は、 ミ ドル . ウェア . レイヤ 1 08を構成するソフトウヱァ群によって処理された処理結果に基づいてぺッ ト口 ボッ ト 1が行う動作を決定するソフトウエア群によって構成されている。
マネージャ ·オブジェク ト 1 1 0は、 オブジェク ト ·マネージャ 1 1 1及びサ 一ビス ·マネージャ 1 1 2によって構成されており、 このうちォブジェク ト ·マ ネージャ 1 1 1は、 ロボティック 'サーバ 'オブジェク ト 1 03、 ミ ドル ' ゥェ ァ . レイヤ 1 08及びアプリケーション ' レイヤ 1 0 9を構成するソフトウエア 群の起動や終了を管理するソフトウエア群でなり、 サービス ·マネージャ 1 1 2 は、 メモリカード 22に記憶されているコネクションファイルに記述された各ォ ブジェク ト間の接続情報に基づいて各オブジェク トの接続を管理するソフトゥェ ァ群でなる。
(5) 画像処理方法
ここでは例えば色検出、 動き検出及び障害物検出のような複数の画像処理を並 行して同時に実行する場合について、 図 7及び図 8に示すフローチヤ一トを用い て説明する。 まずステップ S P 1から入ったステップ S P 2において、 C PU 2 0は、 F B K/CDTドライ ノく 1 0 2 Aを起動して F BK/CDT 46を初期化 する。
次にステップ S P 3において、 C PU 20は、 ロボティック 'サーバ 'ォブジ ェク ト 1 03を起動してバーチャル ' ロボット 1 04を起動する。 バーチャル · ロボッ ト 1 04は、 画像データを記憶するための共有メモリ 1 20を複数個 DR AM 24上に生成した後、 F B K/C DTドライ ノく 1 02 Aに画像サイズのよう な画像の属性に関する情報を設定する。 また CPU 20は、 ロボティック 'サ一 ノ ·オブジェク ト 1 03の起動が終了すると、 ミ ドル . ウェア . レイヤ 1 08を 構成している画像処理オブジェク トを順次起動していく。 因みに、 生成された共 有メモリ 1 20の記憶容量は、 バーチャル ' ロボッ ト 1 04の指示に応じて容易 に変更が可能である。
ステップ S P 4において、 バーチャル ' ロボッ ト 1 04は、 DRAM 24上に 生成した複数の共有メモリ 1 20のうち所望の共有メモリ 1 20のァドレスを F BKZCDTドライバ 1 0 2 Aに通知すると共に、 当該通知したァドレスの共有 メモリ 1 20に画像データを転送することを要求するリード要求を F BKZCD Tドライ ノく 1 02 Aに発行する。
ステップ S P 5において、 F B KZCDTドライ ノく 1 02 Aは、 バーチャル ' ロボッ ト 1 04及び DMAコントローラ 48と共にデータ転送手段を構成し、 リ —ド要求を受け取ると、 指定された共有メモリ 1 20に画像データを転送するた めの DMAリス ト 1 2 1を生成して D RAM 24に記憶する。 その際、 F B CDTドライバ 1 0 2Aは、 DRAM24に記憶された DM Aリス ト 1 2 1のァ ドレスを DMAコン トローラ 4 8に通知した後、 F B K/CDT 46に対して画 像データを出力することを許可する。
ステップ S P 6において、 F BKZCDT46は、 1フィールド分の画像デー タを指定された共有メモリ 1 20に転送すると、 ? 8 7じ0丁 ドラィバ1 0 2 Aに対して割り込みを発生させ、 割り込みハンドラと呼ばれるソフトウユアを起 動させる。 次いでステップ S P 7において、 割り込みハンドラは、 バーチャル ' ロボット 1 04に対して画像データの転送が終了したことを通知する。
ステップ S P 8において、 バーチャル · ロボッ ト 1 04は、 参照回数計測カウ ンタが 0の共有メモリ領域を探索し、 次にステップ S P 9において、 転送すべき 共有メモリ 1 20のア ドレスとして FB K/CDTドライバ 1 ◦ 2 Aに渡してリ 一ド要求を発行した後、 ステップ S P 5に戻って上述の動作を繰り返す。
一方 C PU 20は、 この図 7に示す処理と並行して図 8に示すフロ一チヤ一ト に従った処理を実行する。 すなわち CPU 20は、 このフローチャートをステツ プ S P 0において開始後、 続くステップ S P 1 0において、 ミ ドル ' ウェア ' レ ィャ 1 08を構成する画像処理オブジェク トの起動が終了したか否か判断し、 そ の結果、 画像処理オブジェク トの起動が終了したと判断した場合にはステップ S P 1 1に移行し、 起動が終了していないと判断した場合には起動が終了するまで 待機する。
テップ S P 1 1において、 マネ一ジャ ·オブジェク ト 1 1 0のサービス .マ ネ一ジャ 1 1 2は、 ミ ドル ' ウェア . レイヤ 1 0 8の画像処理ォブジェク トの起 動が終わると、 各画像処理オブジェク トに対して接続相手先の画像処理オブジェ ク トを通知し、 各画像処理オブジェク ト間で通信路を開く。 この場合、 サ一ビス •マネージャ 1 1 2は、 色検出用画像処理オブジェク ト 1 25、 動き検出用画像 処理オブジェク ト 1 26及びエッジ検出用画像処理オブジェク ト 1 27をパーチ ャル ' ロボッ ト 1 04に接続する。 またサービス ·マネージャ 1 1 2は、 重心計 算用画像処理オブジェク ト 1 28を色検出用画像処理オブジェク ト 1 25に接続 すると共に、 重心計算用画像処理オブジェク ト 1 2 9を動き検出用画像処理ォブ ジェク ト 1 26に接続する。 さらにサービス ·マネージャ 1 1 2は、 障害物検出 用画像処理オブジェク ト 1 3 0及び座標変換用画像処理ォブジェク ト 1 3 1をェ ッジ検出用画像処理オブジェク ト 1 2 7に階層的に接続する。 因みに、 このよう な各画像処理オブジェク ト間の接続は変更が可能であり、 各画像処理オブジェク トの接続関係を変更することで様々な処理を行い得る。
ステップ S P 1 3において、 サービス 'マネ一ジャ 1 1 2は、 各画像処理ォブ ジェク ト間の接続が終了すると、 当該各画像処理オブジェク トにスタート信号を 送出する。 これを受けて各画像処理オブジェク トは、 コネクションファイルに記 述された接続情報に基づいて下位層にある接続先の画像処理ォブジェク 卜にデ一 タ要求信号を送出する。
ところで色検出用画像処理ォブジェク ト 1 25、 動き検出用画像処理オブジェ ク ト 1 26及びエッジ検出用画像処理オブジェク ト 1 27は、 F BK/CDT 4 6から順次供給される画像データを、 それぞれ異なるフィールド間隔で読み出す ようになされており、 バーチャル · ロボッ ト 1 04は、 供給される画像データの うち、 各画像処理オブジェク ト 1 2 5〜 1 27がそれぞれ読み出すべき画像デー タを把握している。
従ってステップ S P 1 4において、 バーチャル ' ロボッ ト 1 04は、 各画像処 理ォブジェク ト 1 25〜 1 2 7からデータ要求信号を受け取ると、 通知手段とし て動作し、 各画像処理オブジェク ト 1 25〜1 2 7がそれぞれ読み出すべき画像 データが格納されている共有メモリ 1 20に割り当てられている I D (
I D e n t i f i c a t i o n) (すなわちァドレス情報) を各画像処理ォブジ ェク ト 1 25〜 1 2 7にそれぞれ通知する。 その際、 バ一チャル ' ロボッ ト 1 0 4は、 内部の参照回数計測カウンタを用いて、 各画像処理オブジェク ト 1 25〜 1 27に通知した I Dそれぞれに対して、 通知した画像処理オブジェク ト 1 2 5 〜 1 2 7の数をカウントしてそのカウント数を記憶しておく。
このときバーチャル . ロボッ ト 1 0 4は、 転送制御手段として動作し、 参照回 数計測カウンタによるカウント数が 0でない I Dの共有メモリ 1 2 0には、 F B K/ C D T 4 6から供給される画像データを上書きせずに、 カウント数が 0の共 有メモリ 1 2 0に画像データを上書きして順次記憶していくことにより、 各画像 処理オブジェク ト 1 2 5〜 1 2 7が読み出す可能性のある画像データを誤って消 去することを回避している。
ステップ S P 1 5において、 各画像処理ォブジェク ト 1 2 5〜 1 2 7は、 通知 された I Dが割り当てられている共有メモリから画像データを読み出す。 その際 、 各画像処理オブジェク ト 1 2 5〜 1 2 6は、 それぞれ同一の共有メモリ 1 2 0 に記憶されている画像データを読み出す場合もある。 しかしながら共有メモリ 1 2 0は、 読出し専用のメモリであることから、 各画像処理オブジェク ト 1 2 5 ~ 1 2 7はそれぞれ互いに干渉することなく画像データの読み出しを行い得る。 このようにして各画像処理オブジェク ト 1 2 5〜 1 2 7は、 画像データを所望 の共有メモリ 1 2 0から読み出した後、 ステップ S P 1 6において、 読み出した 画像データに対してそれぞれ所定の画像処理を施し、 その処理結果を上位層のォ ブジェク ト 1 2 8〜 1 3 0に送出して、 ステップ S P 1 7において、 上述のデー タ要求信号に対する画像処理を終了する。
続くステップ S P 1 8において、 各画像処理オブジェク ト 1 2 5〜 1 2 7は、 コネクションファイルに記述された接続情報に基づいて、 次の画像データを要求 するためのデータ要求信号をそれぞれバーチャル · ロボッ ト 1 0 4に送出する。 ステップ S P 1 9において、 バーチャル · ロボッ ト 1 0 4は、 デ一タ要求信号を 受け取ると、 データ要求信号を送出した画像処理オブジェク ト 1 2 5〜 1 2 7に 通知した I Dに対応して記憶されている参照回数計測カウンタのカウント数をデ —タ要求信号が供給される毎に減算する。 そしてバーチャル · ロボッ ト 1 0 4は 、 そのカウント数が 0になったときに、 当該カウント数が 0になった I Dが割り 当てられている共有メモリ 1 2 0に記憶されている画像データの保護を解除し、 ステップ S P 1 4に戻って動作を繰り返す。
すなわち色検出用画像処理オブジェク ト 1 2 5は、 読み出した画像データから 色の検出を行い、 その処理結果を重心計算用画像処理ォブジェク ト 1 2 8に送出 して検出した色の位置を算出させる。 また動き検出用画像処理ォブジェク ト 1 2 6は画像データから動き領域の検出を行い、 その処理結果を重心計算用画像処理 ォブジェク ト 1 2 9に送出して検出した動き領域の位置や大きさを算出させる。 エッジ検出用画像処理オブジェク ト 1 2 7は画像データからエッジの検出を行い 、 その処理結果を障害物検出用画像処理オブジェク ト 1 3 0に送出して障害物の 位置を算出させた後、 座標変換用画像処理オブジェク ト 1 3 1において障害物の 位置を座標変換させる。 次にステップ S P 1 8に戻り次の処理を行う。
このように各画像処理オブジェク ト 1 2 5〜 1 2 7は、 D R AM 24上に生成 された共有メモリ 1 2 0から画像データを読み出すようになされていることから 、 CCDカメラ 1 0に依存しない汎用的な画像処理オブジェク トを実現すること ができ、 従って複数の汎用的な画像処理オブジェク トを組み合わせることで、 様 々な画像処理を行うことが容易となる。
(6) 動作及び効果
以上の構成において、 バーチャル . ロボット 1 0 4は、 DRAM 24上に生成 されている複数の共有メモリ 1 2 0のうち書換え可能な共有メモリ 1 2 0を順次 指定し、 当該指定した共有メモリ 1 2 0のア ドレスを F BKZCDTドライバ 1 0 2 Aに送出する。
F B K/CDTドライバ 1 0 2 Aは、 この指定された共有メモリ 1 2 0のア ド レスに基づいて DMAリストを順次生成し、 これを DRAM24に記憶していく 。 DMAコントローラ 4 8は、 DRAM24に展開されている DMAリス トに基 づいて画像データを F BKZCDT 4 6から指定された共有メモリ 1 2 0に順次 転送する。 このように CCDカメラ 1 0から得られた画像データを、 各画像処理 オブジェク ト 1 2 5〜 1 2 7が直接アクセスし得る DRAM 24上に転送するこ とから、 画像データの転送に要する時間を削減できると共に、 メモリ管理の安全 性を向上し得る。
バ一チャル ' ロボッ ト 1 0 4は、 各共有メモリ 1 2 0にそれぞれ格納されてい る画像データのうち、 各画像処理オブジェク ト 1 2 5〜 1 2 7がそれぞれ読み出 すべき画像データを管理している。 そこでバーチャル ' ロボッ ト 1 0 4は、 各画 像処理オブジェク ト 1 2 5〜 1 2 7からそれぞれ送られてくるデータ要求信号を 受け取ると、 各画像処理オブジェク ト 1 2 5〜 1 2 7に読み出し対象の画像デ一 タが格納されている共有メモリ 1 2 0のァドレスをそれぞれ通知する。
各画像処理オブジェク ト 1 2 5〜 1 2 7は、 通知されたァドレスに基づいて共 有メモリ 1 2 0から画像データを読み出し、 当該読み出した画像データに対して それぞれ所定の画像処理を施す。
その際、 バーチャル ' ロボッ ト 1 0 4は、 読み出し対象の画像データを格納し ている共有メモリ 1 2 0に対して、 当該共有メモリ 1 2 0のァドレスを通知した 画像処理ォブジェク ト 1 2 5〜1 2 7を記憶しておき、 当該記憶された画像処理 オブジェク ト 1 2 5〜 1 2 7全てから次のデータ要求信号が供給されるまで、 当 該共有メモリ 1 2 0に F B KZ C D T 4 6から画像データを転送することを禁止 する。
これにより複数の独立した画像処理オブジェク ト 1 2 5〜 1 2 7を互いに干渉 することなく並行して実行しながら、 読み出し対象の画像データを確実に保護し 得る。
以上の構成によれば、 各画像処理オブジェク ト 1 2 5〜 1 2 7からそれぞれ読 み出し対象の画像データが要求されると、 当該読み出し対象の画像データが格納 されている共有メモリ 1 2 0の I Dを各画像処理オブジェク ト 1 2 5〜 1 2 7に それぞれ通知することにより、 各画像処理オブジェク ト 1 2 5〜 1 2 7は、 通知 された I Dに基づいて D R AM 2 4上に格納されている画像データをそれぞれ直 接読み出すことができ、 かく して簡易な構成で複数の独立した画像処理をそれぞ れ並行して高速に実行し得る。
( 7 ) 他の実施の形態 なお上述の実施の形態においては、 本発明をぺッ トロボッ ト 1に適用した場合 について述べたが、 本発明はこれに限らず、 例えばゲームや展示等のェンタティ ンメント分野で用いられるロボッ ト又は搬送用ロボッ ト、 工事用ロボッ ト等の産 業ロボッ トのように、 他の種々のロボッ ト装置に本発明を広く適用し得る。 また上述の実施の形態においては、 本発明をぺッ トロボッ ト 1に適用した場合 について述べたが、 本発明はこれに限らず、 例えば複数の画像処理を施すコンビ ュ一タのように、 複数の画像処理を並列的に実行する他の種々の画像処理装置に 本発明を広く適用し得る。 産業上の利用可能性
本発明は、 ペッ トロボッ 卜に適用することができる。
また本発明は、 複数の処理を同時並行して行う画像処理装置に適用することが できる。

Claims

請 求 の 範 囲
1 . 複数の画像処理手段を有し、 当該複数の画像処理手段によって複数種類の 画像処理を並行してそれぞれ実行する画像処理装置において、
画像入力手段から順次入力される複数の画像データを記憶手段に記憶するため のァ ドレス情報をそれぞれ生成し、 当該生成したァ ドレス情報に基づいて上記各 画像データを順次上記記憶手段に転送して記憶するデータ転送手段と、
上記複数の画像処理手段からそれぞれ読み出し対象の画像データが要求される と、 当該読み出し対象の画像データが格納さ'れている上記記憶手段のァドレス情 報を上記各画像処理手段にそれぞれ通知する通知手段と
を具え、 上記各画像処理手段は、 通知されたア ドレス情報に基づいて上記読み 出し対象の画像データをそれぞれ読み出して所定の画像処理を施す
ことを特徴とする画像処理装置。
2 . 上記画像処理手段によつて上記読み出し対象の画像データが読み出されるま で、 上記画像入力手段から順次入力される画像データを、 上記記憶手段を形成す る記憶領域のうち上記読み出し対象の画像データが格納されている上記記憶領域 以外の上記記憶領域に転送して記憶する転送制御手段を具える
ことを特徴とする請求の範囲第 1項に記載の画像処理装置。
3 . 複数の画像処理手段を有し、 当該複数の画像処理手段によって複数種類の画 像処理を並行してそれぞれ実行するロボッ ト装置において、
画像入力手段から順次入力される複数の画像データを記憶手段に記憶するため のァ ドレス情報をそれぞれ生成し、 当該生成したァドレス情報に基づいて上記各 画像データを順次上記記憶手段に転送して記憶するデ一タ転送手段と、
上記複数の画像処理手段からそれぞれ読み出し対象の画像データが要求される と、 当該読み出し対象の画像データが格納されている上記記憶手段のァドレス情 報を上記各画像処理手段にそれぞれ通知する通知手段と
を具え、 上記各画像処理手段は、 通知されたア ドレス情報に基づいて上記読み 出し対象の画像データをそれぞれ読み出して所定の画像処理を施す
ことを特徴とするロボッ ト装置。
4 . 上記画像処理手段によって上記読み出し対象の画像データが読み出されるま で、 上記画像入力手段から順次入力される画像データを、 上記記憶手段を形成す る記憶領域のうち上記読み出し対象の画像データが格納されている上記記憶領域 以外の上記記憶領域に転送して記憶する転送制御手段を具える
ことを特徴とする請求の範囲第 3項に記載の口ボッ ト装置 c
5 . 複数の画像処理手段によって複数種類の画像処理を並行してそれぞれ実行す る画像処理方法において、
画像入力手段から順次入力される複数の画像データを記憶手段に記憶するため のァ ドレス情報をそれぞれ生成し、 当該生成したァ ドレス情報に基づいて上記各 画像データを順次上記記憶手段に転送して記憶し、
上記複数の画像処理手段からそれぞれ読み出し対象の画像データが要求される と、 当該読み出し対象の画像データが格納されている上記記憶手段のァドレス情 報を上記各画像処理手段にそれぞれ通知し、
上記各画像処理手段は、 通知されたァドレス情報に基づいて上記読み出し対象 の画像データをそれぞれ読み出して所定の画像処理を施す
ことを特徴とする画像処理方法。
6 . 上記画像処理手段によって上記読み出し対象の画像データが読み出されるま で、 上記画像入力手段から順次入力される画像データを、 上記記憶手段を形成す る記憶領域のうち上記読み出し対象の画像データが格納されている上記記憶領域 以外の上記記憶領域に転送して記憶する とを特徴とする請求の範囲第 5項に記載の画像処理方法 c
PCT/JP2000/002986 1999-05-10 2000-05-10 Appareil et procede de traitement d'images, et robot associe WO2000068882A1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2000616587A JP4759810B2 (ja) 1999-05-10 2000-05-10 画像処理装置及びロボット装置並びに画像処理方法
EP00925594A EP1126409A4 (en) 1999-05-10 2000-05-10 IMAGE PROCESSING APPARATUS AND METHOD, AND ROBOT THEREOF
US10/023,625 US6912449B2 (en) 1999-05-10 2001-12-18 Image processing apparatus, robot apparatus and image processing method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP12927499 1999-05-10
JP11/129274 1999-05-10

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US09743290 A-371-Of-International 2001-02-26
US10/023,625 Continuation US6912449B2 (en) 1999-05-10 2001-12-18 Image processing apparatus, robot apparatus and image processing method

Publications (1)

Publication Number Publication Date
WO2000068882A1 true WO2000068882A1 (fr) 2000-11-16

Family

ID=15005545

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2000/002986 WO2000068882A1 (fr) 1999-05-10 2000-05-10 Appareil et procede de traitement d'images, et robot associe

Country Status (4)

Country Link
US (1) US6912449B2 (ja)
EP (1) EP1126409A4 (ja)
JP (1) JP4759810B2 (ja)
WO (1) WO2000068882A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019149215A1 (zh) * 2018-02-05 2019-08-08 腾讯科技(深圳)有限公司 智能机器人控制方法和装置、系统及存储介质

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004085120A1 (ja) * 2003-03-25 2004-10-07 Rorze Corporation ロボットシミュレーション装置、および、シミュレーションプログラム
JP2006015436A (ja) * 2004-06-30 2006-01-19 Honda Motor Co Ltd 監視ロボット
KR100766434B1 (ko) * 2005-07-22 2007-10-15 엘지전자 주식회사 영상 인식이 가능한 이동체와 이동체 유도 방법
JP2007058518A (ja) * 2005-08-24 2007-03-08 Renesas Technology Corp メモリカード
US8395626B2 (en) * 2006-04-08 2013-03-12 Alan Millman Method and system for interactive simulation of materials
US8786613B2 (en) 2006-04-08 2014-07-22 Alan Millman Method and system for interactive simulation of materials and models
EP2126834A1 (en) * 2007-02-02 2009-12-02 Thomson Licensing Independent parallel image processing without overhead
US9552619B2 (en) * 2012-08-08 2017-01-24 Megachips Corporation Image processing apparatus and image processing interface circuit

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06229941A (ja) * 1993-01-29 1994-08-19 Ricoh Co Ltd 画像検査装置
JPH08272675A (ja) * 1995-03-29 1996-10-18 Fuji Xerox Co Ltd 画像処理装置
JPH08297585A (ja) * 1995-04-25 1996-11-12 Hitachi Ltd オペレーティングシステムによるデータ転送方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2577096B1 (fr) 1985-02-06 1988-07-22 Hotchkiss Brandt Sogeme Dispositif et procede de traitement d'images
US4850027A (en) * 1985-07-26 1989-07-18 International Business Machines Corporation Configurable parallel pipeline image processing system
GB9206126D0 (en) * 1992-03-20 1992-05-06 Maxys Circuit Technology Limit Parallel vector processor architecture
JP3176472B2 (ja) * 1993-03-22 2001-06-18 株式会社エヌ・ティ・ティ・データ データ転送方式
JPH09511078A (ja) * 1993-12-12 1997-11-04 エーエスピー ソルーション ユーエスエイ インコーポレイション 信号処理方法および装置
JPH0850651A (ja) * 1994-08-05 1996-02-20 Mitsubishi Electric Corp 画像処理lsi
JP4136022B2 (ja) * 1996-11-26 2008-08-20 キヤノン株式会社 バッファメモリ制御装置
US6215898B1 (en) * 1997-04-15 2001-04-10 Interval Research Corporation Data processing system and method
JP2001188555A (ja) 1999-12-28 2001-07-10 Sony Corp 情報処理装置および方法、並びに記録媒体
JP2001191283A (ja) 1999-12-31 2001-07-17 Sony Corp ロボット装置及びその制御方法
JP3374175B2 (ja) * 2000-01-27 2003-02-04 名古屋大学長 位置表示用データ送信機能付きデータ送信装置、(以下[発明の名称の続き]欄に記載)
JP4233723B2 (ja) 2000-02-28 2009-03-04 本田技研工業株式会社 障害物検出装置、障害物検出方法、及び障害物検出プログラムを記録した記録媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06229941A (ja) * 1993-01-29 1994-08-19 Ricoh Co Ltd 画像検査装置
JPH08272675A (ja) * 1995-03-29 1996-10-18 Fuji Xerox Co Ltd 画像処理装置
JPH08297585A (ja) * 1995-04-25 1996-11-12 Hitachi Ltd オペレーティングシステムによるデータ転送方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019149215A1 (zh) * 2018-02-05 2019-08-08 腾讯科技(深圳)有限公司 智能机器人控制方法和装置、系统及存储介质
US11584006B2 (en) 2018-02-05 2023-02-21 Tencent Technology (Shenzhen) Company Limited Intelligent robot control method, apparatus, and system, and storage medium

Also Published As

Publication number Publication date
EP1126409A4 (en) 2003-09-10
JP4759810B2 (ja) 2011-08-31
US6912449B2 (en) 2005-06-28
US20020054240A1 (en) 2002-05-09
EP1126409A1 (en) 2001-08-22

Similar Documents

Publication Publication Date Title
CN1107287C (zh) 信息处理装置和信息处理方法
CN101065171B (zh) 信息处理装置及数据处理方法
US7925381B2 (en) Hardware abstraction layer (HAL) for a robot
JP5700582B2 (ja) マルチプロセッサの完全な相互アクセス方法及びシステム
WO2000068882A1 (fr) Appareil et procede de traitement d'images, et robot associe
US20230022294A1 (en) Method for Scheduling Hardware Accelerator and Task Scheduler
CN107077186A (zh) 低功率计算成像
US9286129B2 (en) Termination of requests in a distributed coprocessor system
JP4235858B2 (ja) ロボット装置及びロボット装置の障害物マップ生成方法
JP7223865B2 (ja) 情報処理装置、情報処理方法およびプログラム
EP1310870A1 (en) Information processing device, information processing method, and robot apparatus
JP4193098B2 (ja) トラッキング装置、トラッキング装置のトラッキング方法及びロボット装置
JP4618470B2 (ja) 画像処理装置及び方法並びにロボット装置及びその制御方法
JP2007528050A5 (ja)
Posadas et al. Communications Structure for Sensor Fusion in Distributed Real Time Systems
JP2002326176A (ja) ロボット装置、並びに、画像記憶方法及び画像記憶装置、並びに、制御プログラム及び記録媒体
WO2024087513A1 (zh) 应用场景的数据处理方法、系统、电子设备及存储介质
JP2005519389A (ja) 外部でトリガされたイベントに関連するデータ/命令をプリフェッチする方法
JP2004318200A (ja) センサシステム、検知情報収集方法、情報伝送システム及び情報伝送方法
JP2024538279A (ja) ダイレクトメモリアクセスコマンドのハードウェア管理
JPH05233525A (ja) I/o処理装置
KR950008838B1 (ko) 멀티미디어 지식처리를 위한 병렬처리 컴퓨터의 노드 컴퓨터 구조
JPH03292556A (ja) メモリマツプドデバイス制御方式
JPH04205047A (ja) データ処理装置
JP2004229003A (ja) ロボット装置、撮像方向切換方法

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): DE FR GB

WWE Wipo information: entry into national phase

Ref document number: 2000925594

Country of ref document: EP

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 09743290

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 2000925594

Country of ref document: EP