CN1099543A - 目标图象建立设备和方法及其中使用的存储器 - Google Patents
目标图象建立设备和方法及其中使用的存储器 Download PDFInfo
- Publication number
- CN1099543A CN1099543A CN94107205A CN94107205A CN1099543A CN 1099543 A CN1099543 A CN 1099543A CN 94107205 A CN94107205 A CN 94107205A CN 94107205 A CN94107205 A CN 94107205A CN 1099543 A CN1099543 A CN 1099543A
- Authority
- CN
- China
- Prior art keywords
- image
- map
- halver
- data
- target image
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
一种目标图象建立设备与方法,将构成一个目标
的各部位的图象组合成一个目标图象。一个存储器
存储构成一个目标的两半之一的各部位的多种图象
的数据。任何图象都是逐个地从存储的各部位的多
种图象中选择的。将各部位选中的图象组合成一个
第一半目标图象。在第一半目标图象的基础上生成
一个与第一半目标图象对称的第二半目标图象。将
第一与第二半目标图象组合成一个完整的目标图
象。
Description
本发明涉及将多个部位图象组合成一个完整的目标图象的目标图象建立设备,更具体地涉及从存储的构成一个目标的一半之一的各部位的多个图象中一个个地选择、复制及组合所要求的图象的一种图象建立设备与方法。
传统上,一种图象建立设备是已知的,它从事先存储了其数据的具有任何形状的各部位的多种图象中选择一个目标的部位的任何图象,并将选中的图象组合成一个完整的目标图象。
因此,如果想要建立一个与要建立的目标非常相似的目标图象,则需要事先为该目标图象的各部位准备尽可能多的部位图象。
然而,如果要事先为各部位准备尽可能多的部位图象,则需要一个大容量的存储器。从而,整个设备将不利地变成昂贵的、大而重的。
本发明旨在消除这些问题。
本发明的第一目的为提供一种小型的、重量轻的、成本低的目标图象建立设备及费用低廉地建立一个目标图象的一种方法。
本发明的第二目的为提供一种目标图象建立设备及方法,它能够使用一个小容量的存储器来建立一个用户所要求的目标图象。
本发明的第三目的为提供一种对该目标图象建立设备与方法有用的小型存储器。
为了达到本发明的第一目的,本发明提供了一种目标图象建立设备,包括:
存储装置,用于存储构成目标的一半之一的各部位的多种图象的数据;
第一半目标图象生成装置,用于从其图象数据存储在该存储装置中的各部位的多种图象中一个个地选择任何部位图象,并将所选中的图象组合成一第一半目标图象;
第二半目标图象生成装置,用于在第一半目标图象的基础上生成一个与该第一半目标图象对称的第二半目标图象;以及
目标图象生成装置,用于将第一与第二半目标图象组合成一个完整的目标图象。
为了达到上述第二目的,本发明提供了一种目标图象建立方法,包括:
从存储了图象数据的构成一个目标的一半之一的各部位的多种图象中一个个地选择任何部位图象的一个第一步骤;
将选中的部位图象组合成一个第一半个目标图象的一个第二步骤;
在该第一半目标图象的基础上生成一个与该第一半目标图象对称的第二半目标图象的一个第三步骤;以及
将该第一与第二半目标图象组合成一个完整的目标图象的一个第四步骤。
为了达到上述第三目的,本发明提供一个与目标图象建立设备一起使用的目标图象存储装置,在该建立设备中,由选择装置逐个地从各部位的多种图象中选择构成一个目标的一半之一的部位的任何图象,并将选中的图象组合成一个目标图象,
该装置包括:
第一存储装置,用于存储构成该目标图象建立设备要生成的目标的一半之一的各部位的多种图象;
第二存储装置,用于存储由选择装置从其数据存储在第一存储装置中的各部位的多种图象中选择的任何图象的一种组合所构成的一个第一半目标图象的数据,及在该第一个半个目标图象基础上形成的与该第一半目标图象对称的一个第二半目标图象的数据,从而将这第一与第二半目标图象组合成一个完整的目标图象。
图1为根据本发明的一种目标图象建立设备的一个实施例的示意图。
图2展示其数据存储在一个部位图形ROM(只读存储器)中的部位图形的实例。
图3A展示存储在一个工作RAM(随机存取存储器)的数据存储单元上的数据项的实例。
图3B展示存储在一个工作RAM的面部特征数据单元上的数据项的实例。
图3C展示存储在工作RAM的面部特征数据单元上的数据项与这些数据项所指定的性别、部位种类等的实例之间的关系。
图4展示存储在一个屏幕数据ROM中的屏幕数据的实例。
图5A-5D展示屏幕数据项的显示实例。
图6为一个面部图象建立进程的主程序的流程图。
图7为一个特征开关中断例程的流程图。
图8A与8B为一个光标开关中断例程的流程图。
图9为一个角度校正开关中断例程的流程图。
图10A与10B为一个转动角度开关中断例程的流程图。
图11为一个位置校正开关中断例程的流程图。
图12A至12C为一个显示开关中断例程的流程图。
图13A-13D各展示一个建立的面部图象。
图14展示其数据存储在部位图形ROM中的其它部位图形的实例。
下面参照附图描述一种创造性的目标图象建立设备的一个实施例。
图1为该目标图象建立设备的一个实施例的示意图。
在图1中,面部图象建立设备包括一个CPU1、一个特征输入开关2、一个光标开关3、一个显示开关4、一个位置校正开关5、一个角度校正开关6、一个转动角度开关7、一个程度ROM8、一个工作RAM9、一个部位图形ROM10、一个VRAM(视频RAM)11、一个显示器12、一个打印机13及一个屏幕数据ROM14。
CPU1控制整个面部图象建立设备。当特征输入开关2、光标开关3、显示开关4及位置校正开关5指定面部图形、特征等时,CPU1按照存储在程序ROM8中的程序数据及存储在工作RAM9中的部位数据,对这一指定作出响应从部位图形ROM10中读取与组合面部各部位的图形上的数据,从而建立使用者或另一个人的面部图象。
在这一情况中,CPU1有选择地从存储在部位图形ROM10中的各部位的各种图形的数据项中顺序地逐项读取构成一个面部图象的一半之一的部位图形种类的数据项,并对应于预定的位置顺序地翻转它们,组合原来选择的部位图形与翻转的部位图形以构成一个完整的面部图象。
当位置校正开关5、角度校正开关6与转动角度开关7指定一个位置与角度要校正的部位图形时,CPU1改变指定的部位图形的位置及部位图形的倾斜一个预定的角度并显示它们。
操作特征输入开关2来显示选择具有一个面部图象的人的性别数据的一个屏面(图5A),及为了建立面部图象而选择表示面部各部位(发型、轮廓、眉毛、眼睛、鼻子及口)的特征的面部特征上的数据的多个屏面(图5B-5D)。
操作光标开关3从为了建立面部图象而通过操作特征输入开关2已经显示在显示器12上的屏面数据的各面部特征数据及性别数据中选择任何数据项。每次操作光标开关3时,光标K便在显示器12的屏幕上上下移动,借此来选择与光标移动到的位置相对应的数据。在本实施例中,操作光标开关3时,附加在对应的屏面数据项上的数字“01”、“02”、…之一对应于光标开关3的操作以一种产生/消失方式显示,如图5A-5D中所示。作为替代,可使用一个鼠标器代替光标开关3来选择要求的数据。
操作显示开关4在显示器12上显示存储的面部图象数据。
位置校正开关5是,例如,一个上下型按钮开关,操作它来相对于整个面部图象校正一个部位图形的位置。
角度校正开关6是,例如,一个上下型按钮开关,操作它来相对于整个面部图象校正显示在显示器12上的一个部位“眉毛”的图形的倾斜角度。
转动角度开关7是,例如,操作来转动显示在显示器12上的一个部位“眼睛”的图形。
程序ROM8存储CPU1的一个控制程序,该程序的内容将在后面有关的图中示出。
工作RAM9是用在CPU1的控制中的一个工作区。
如图2中所示,部位图形ROM10存储一个面部图象的各部位的多种部位图形的数据。在本实施例中,面部的部位的种类数为N;即N=1表示面部的一个部分“发型”;N=2表示面部的一个部位“半轮廓”;N=3表示面部的一个部位“眼睛”;N=4表示面部的一个部位“眉毛”;N=5表示面部的一个部位“半个鼻子”;N=6表示面部的一个部位“半张嘴”。本发明不限于图2的例子,还可包含其它部位图形诸如半个躯干、臂、手与腿。
如图2中所示,各部位的部位图形种类的数据项是存储在部位图形ROM10中的对应图形号码中的。例如,在N=1的部位“发型”的情况中,20种“发型”的不同部位图形的数据项是与对应的号码“01”-“20”一起事先存储的。类似地,面部的各其它部位“半轮廓”、“眼睛”与“眉毛”的部位图形的数据项是与图形号码“01”-“20”对应地事先存储的。
面部图象的各部位图形应为构成面部图象的所有右与左侧部位原始存储的。然而,面部图象是由基本上对称的右与左侧部位图形构成的。因此,在本实施例中,不存储所有右与左侧部位的数据项,而只存储左侧部位的数据项。从而,与存储构成一个面部图象的所有右与左侧部位图形的数据的情况相比,只需要一半数量的部位图形。因此,存储区减半,而部位图形的存储容量也相应地减少。
如图3A中所示,在CPU1执行各种控制操作时,工作RAM9是用作一个工作区的。各种数据项是存储在对应于工作RAM9中地址(OFFSET1+1)至(OFFSET6+5)的各存储单元上的。更具体地,用于指定选择图4的屏面数据的各地址数据ADD1-ADD7是存储在对应于地址(OFFSET1+1)至(OFFSET1+7)的选择的屏幕单元上的。在操作光标开关3的位置上的数据项是存储在对应于地址(OFFSET2+1)至(OFFSET2+7)的光标位置单元上的。
各部位的面部特征上的数据项是存储在对应于地址(OFFSET3+1)至(OFFSET3+6)的面部特征数据单元上的。如图3B中所示,面部特征上的各数据项由多个位构成,其中最高到最低位以这一次序表示对应的性别、部位号与部位图形号数据项。图3C示出这些性别、部位号与部位图形号数据项与由这些对应的数据项所指定的性别、部位与部位图形上的图象数据项之间的关系。
性别数据项是存储在最高位的一个性别数据单元(由a指定)上的。它由一位构成。如图3C中所示,位“1”表示男性而位“0”表示女性。
部位号码数据项是存储在第二位的各部位号码单元(用b指定)上的。如图3C中所示,部位号码数据是由用户从对应于六种部位“发型”、“轮廓”、…的部分号码“1”-“6”上的数据项中选择的。
部位图形号码数据项是存储在第三位的部位图形号码单元(用c指定)上的。部位图形号码数据项是由用户从部位图形ROM10中的部位图形号码“01”-“20”的数据项中选择的。例如,如图3C中所示,如果用户选择了发型的“7∶3分头”的一个部位图形,便存储了对应于该部位图形的部位图形号码“01”的数据。从而,在一个图形单元(用c示出)上存储了这一部位图形号码“01”。
当在面部图象的部位图形中改变了眼睛、眉毛与嘴的形状与位置时,它们极大地改变了用户对面部图象的影象。从而,在本实施例中,可以执行一个用于改变这些部位图形的位置、转动角度等的进程,并在工作RAM9中提供了用于存储这些眼睛、眉毛与嘴的坐标与角度数据项的一个区域。
嘴的数据存储在地址OFFSET4与(OFFSET4+1)上。更具体地,嘴的转动中心的坐标数据存储在地址OFFSET4上。嘴的转动角度(用角度校正开关6指定)数据存储在地址(OFFSET4+1)上。
面部两条对应眉毛的数据项存储在地址OFFSET5、(OFFSET5+1)、(OFFSET+2)与(OFFSET5+3)上。更具体地,两条眉毛之一(例如,左眉毛)的转动中心坐标数据存储在地址(OFFSET5上)。在复制与使用另一条眉毛时的复制坐标数据(另一条眉毛(例如,右眉毛)的转动中心)存储在地址(OFFSET5+1)。
一条眉毛(例如,左眉毛)的转动角度数据(用角度校正开关6指定)存储在地址(OFFSET5+2)上。在复制与使用另一条眉毛(例如,右眉毛)时,该另一条眉毛的转动复制角度数据存储在地址(OFFSET5+3)上。
面部双眼的数据项存储在地址OFFSET6-(OFFSET6+5)上。更具体地,面部图象中双眼之一(例如左眼)的转动中心坐标数据存储在地址OFFSET6上。当复制与使用另一只眼睛(例如右眼)时,另一只眼睛的转动中心的复制坐标数据存储在地址(OFFSET6+1)上。一只眼睛(例如左眼)的位置校正数据(用位置校正开关5指定)存储在地址(OFFSET6+2)上。当复制与使用另一只眼睛(例如右眼)时,用于校正另一只眼睛的复制位置校正数据存储在地址(OFFSET6+3)上。
一只眼睛(例如左眼)转动的角度数据(用角度校正开关6指定)存储在地址(OFFSET6+4)上。当复制与使用另一只眼睛(例如右眼)时,另一只眼睛的转动复制角度数据(用角度校正开关6指定)存储在地址(OFFSET6+5)上。
如图4中所示,在建立面部图象时,屏幕数据ROM14预先存储显示在显示器12上的屏幕数据。屏幕数据ROM14中的数据项是由存储在工作RAM9中地址(OFFSET1+1)-(OFFSET1+9)上的各屏幕数据的地址数据项ADD1-ADD7指定的。
在图4中,当选择了一种性别时屏幕所使用的一个屏幕数据项是存储在对应于地址ADD1的一个单元上的。如图5A中所示,要求用户响应“性别?”根据屏幕数据指定一种性别,“01∶男”与“02∶女”的一个屏幕显示在显示器12上。
在图4中,当选择了一种发型时屏幕所使用的一个屏幕数据项是存储在对应于地址ADD2的一个单元上的。如图5B中所示,要求用户根据屏幕数据选择一种发型的一个屏幕是显示在显示器12上的。
类似地,当选择了面部各部位“轮廓”、“眼睛”、“眉毛”、“鼻子”及“嘴”时,屏幕所使用的屏幕数据项是存储在对应于地址ADD3-ADD7的单元上的。要求用户根据显示器屏幕数据选择面部各对应部位“发型”、“轮廓”、“眼睛”、“眉毛”、“鼻子”与“嘴”的一个屏幕显示在显示器12上(图5A-5D)。
各发型、轮廓等的多个部位图形的数据项存储在地址ADD8及后面的地址上。在这一情况中,整个发型的数据是以一个位图的方式存储的,而不是半个发型的数据。整个轮廓的左半数据是以位图方式存储的。对于一对左右对称的部位图形,例如,一对眼睛、眉毛及半张嘴,则存储该图形对中的一个的部位图形数据,如图2中所示。
为什么只存储位于面部图象半边(左或右边)的一半轮廓、眼睛、眉毛及半张嘴的图形的数据项的理由是它们基本上是沿一条通过面部图象的垂直线与位于另半边(右或左边)的对应图形对称的。反之,当沿其垂直线切开时,得到的“7∶3分开的头发”的一半(左或右)不一定与发型的另一半(右或左)对称,因此,只有发型的一半不能用于其另一半。因此,不采用只存储发型的一半数据。
在一只眼睛的图形的情况中(例如左眼),一只眼睛(1)的数据是作为带有两个参数的一个第一图形数据存储的,这两个参数包括眼睛的转动位置的坐标(X1、Y1)及眼睛的形状。一只眼睛(2)的数据是作为带有两个参数的一个第二图形存储的,这两个参数包括眼睛的转动位置的坐标(x2、y2)及眼睛的形状。类似地,这也应用于眼睛(3)、(4)、…的数据(即,存储眼睛的多种部位图形数据)。
在一条眉毛的图形的情况中(例如左眉毛),一条眉毛(1)的数据是作为带有两个参数的一个第一图形数据存储的,这两个参数包括眉毛的转动位置的坐标(X1、Y1)及眉毛的形状。一条眉毛(2)的数据是作为带有两个参数的一个第二图形数据存储的,这两个参数包括眉毛的转动位置的坐标(X2、Y2)及眉毛的形状。类似地,这也应用于眉毛(3)、(4)、…的数据(即,存储眉毛的多种部位图形的数据)。
在半个鼻子的图形数据的情况中,半个鼻子(1)的数据是作为带有一个参数(半个鼻子的形状)的一个第一图形数据存储的。半个鼻子(2)的数据是作为一个第二图形数据存储的。类似地,这也应用于半个鼻子(3)、(4)、…的数据(即,存储半个鼻子的多种部位图形数据)。
在半张嘴(例如左半张嘴)的图形的情况中,半张嘴嘴(1)的数据是作为带有两个参数的一个第一图形数据存储的,这两个参数中包括半张嘴的转动位置的坐标(X1、Y1)及半张嘴的形状。半张嘴(2)的数据是作为带有两个参数的一个第二图形数据存储的,这两个参数包括这半张嘴的转动位置的坐标(X2、Y2)及半张嘴的形状。类似地,这也应用于嘴(3)、(4)、…的数据(即,存储了半张嘴的多种部位图形数据)。
当建立面部图象并使用诸如一个半导体存储器时,VRAM11以一个屏面为单位存储一个面部图象的部位图形数据。
显示器12显示在CPU1的控制下处理的一个面部图象。显示器12显示一个面部图象及各种数据项,并向/从VRAM11与CPU1发送各种数据。它可由一台电视显示器、一个专用的监视器、一个CRT或一个LCD(液晶显示器)构成。
下面描述本实施例的操作。在本实施例中,通过光标开关3的操作指定的面部部位的部位图形是逐个地从为各部位提供的多种部位图形中选择的,并将这些选中的部位图形组合成一个面部图象,然后显示之。
下面描述建立面部图象的各步骤。图6为表示面部图象建立进程的主程序的流程图。当起动这一程序时,在步骤S10中执行初始化,在其中将各种寄存器与VRAM11清零;初始化子例程;并复位标态。如图3A中所示,同时在工作RAM9中的对应于地址(OFFSET1+1)至(OFFSET6+5)的存储单元上作为初始数据项存储各种数据项。
即,将用于指定各屏幕数据项的七种地址数据项ADD1-ADD7存储在对应于地址(OFFSET1+1)至(OFFSET1+7)的选择的图象单元上。将对应于光标K的事先初始设定位置的位置数据项存储在对应于地址(OFFSET2+1)至(OFFSET2+7)的光标位置单元上。将各部位上的面部特征数据项存储在对应于地址(OFFSET3+1)至(OFFSET3+6)的面部特征数据单元上。面部特征数据是由事先初始设定的性别、及部位号码、部位图形号码数据项构成的,因此存储这些对应的数据。在本实施例的情况中,使初始设置时存储在面部特征数据单元上的数据中包含表示男性的“01”的性别数据;表示一种发型的“1”的部位号码数据;及表示部位图形号码数据的“01”的部位图形号码数据。
眼、眉毛及半张嘴的坐标与角度数据项是存储在工作RAM9中的,使得一个改变眼睛、眉毛及半张嘴的部位图形的位置与转动角度的一个进程得以执行。
半张嘴的数据项是存储在地址OFFSET4及(OFFSET4+1)上的。更具体地,半张嘴的部位图形的转动中心的坐标数据存储在地址OFFSET4上。半张嘴的部位图形的转动角度数据存储在地址(OFFSET4+1)上。
对应于面部的两条眉毛的数据项的数据存储在地址OFFSET5、(OFFSET5+1)、(OFFSET5+2)及(OFFSET5+3)上。更具体地,面部两条眉毛之一(例如左眉毛)的转动中心的坐标数据项存储在地址OFFSET5上。当复制与使用两条眉毛中的另一条(例如右眉毛)的图形时,这另一条眉毛的转动中心的复制坐标的数据项存储在地址(OFFSET5+1)上。
面部两条眉毛之一(例如左眉毛)的转动角度的数据项存储在地址(OFFSET5+2)上。当复制与使用另一条眉毛(例如右眉毛)时,作为眉毛的转动角度的一个复制角度数据项存储在地址(OFFSET5+3)上。
对应于面部双眼的各部位图形的数据项存储在地址OFFSET6至(OFFSET6+5)上。更具体地,面部双眼之一(例如左眼)的部位图形的转动中心的坐标数据存储在地址OFFSET6上。当复制与使用另一只眼睛(例如右眼)的图形时,所使用的另一只眼睛的转动中心复制坐标数据存储在地址(OFFSET6+1)上。双眼之一(例如左眼)的图形位置校正数据存储在地址(OFFSET6+2)上。当复制与使用双眼中另一只(例如右眼)的图形时,所使用的复制位置校正数据存储在地址(OFFSET6+3)上。一只眼睛(例如左眼)的部位图形的转动角度数据存储在地址(OFFSET6+4)上。当复制与使用另一只眼睛(例如右眼)的图形时,另一只眼睛的转动复制角度数据存储在地址(OFFSET6+5)上。
在步骤S12,将设置在CPU1中的一个指针M1寄存器15的值清零。指针M1寄存器15用于指定性别与部位的总共为7个数据项作为一个面部的对应特征(当输入了这些数据项时)。
在步骤S14,在显示器12上显示VRAM11的内容。根据当前作为面部特征数据存储在工作RAM9中的性别、部位号及部位图形号数据项读取存储在部分图形ROM10中的各部位图形数据项。
更具体地,根据性别、部位号与部位图形号数据项读取存储在部位图形ROM10中的部位图形数据。在VRAM11中存储各部位图形的一种组合构成的一个面部图象数据,在显示器12上显示这些数据的内容。从而,在初始设置时,在显示器12上显示在步骤S10初始设置在工作RAM9中的各数据项为基础的一个面部图象;在形成面部图象的过程中显示一个半边的面部图象;而在建立了面部图象后显示一个完整的面部图象。
此后,根据来自这些开关中每个的一个中断信号,步骤S14重复执行一个要求的进程。用于选择各图形的进程全都是在下面指出的中断例程中执行的。
图7为表示一个特征开关中断例程的流程图,每当操作了特征开关2时便执行这一例程。每次操作特征开关2时,顺序地改变屏幕数据的内容,如图5A-AD中所示。用户一面观看图5A-5D的屏面一面选择性别、发型、眼睛、眉毛、…的面部特征数据项。
在初次操作特征开关2时,在步骤S20将指针M1寄存器15的值增加1。在步骤S22,判定寄存器15的值是否为“8”,它超过了数据项的数目“7”(一个性别及六个部位)。
当在步骤S22判定指针M1寄存器15的值不等于“8”时,控制便传送到步骤S26,在那里将使用工作RAM9中地址(M1+OFFSET1)上的数据作为起始地址从屏幕数据ROM14中读取的图象数据传送给VRAM11。
当在步骤S22判定指针M1寄存器15的当前值等于“1”时,控制便传送到步骤S26,在那里将使用地址(M1+OFFSET1)上的数据作为起始地址从工作RAM9中读取的屏幕数据传送给VRAM11。在这一情况中,在工作RAM9中地址(M1+OFFSET1)上的数据为ADD1,而其内容则为性别选择屏幕数据,如图4中所示。从而在显示器12上显示要求用户对“性别?”与“01∶男”与“02∶女”作出响应根据性别选择屏幕数据指定一种性别的一个屏面,如图5A中所示。
当再次操作特征开关2时,指针M1寄存器15的值在步骤S20上为“2”。因此,由于在步骤S22判定寄存器15的当前值为“2”,而在步骤S26将对应于图4的地址ADD2的屏幕数据(当选择了一种发型时用于屏幕的)传送给VRAM11。从而,在显示器12上显示要求用户根据屏幕数据响应“发型?”“01∶7∶3分头”、“02∶光头”、…选择一种发型的一个显示屏面,如图5B中所示。
每次顺序地操作特征开关2时,在步骤S20上顺序地增加寄存器15的值。结果,当在步骤S22判定寄存器15的值为“8”时,便将控制传送给步骤S24,在那里将寄存器15的值返回到“1”。此后,控制传送到步骤S26,在那里将使用工作RAM9中地址(M1+OFFSET1)上的数据作为起始地址存储在屏幕数据ROM14中的屏幕数据再次传送到VRAM11。此后,每次操作特征开关2时,便将寄存器15的值增加1,使得(M1+OFFSET1)上的屏幕数据被传送给VRAM11,以在显示器12上显示这些屏幕数据。
以这一方法,每次操作特征开关2时,屏幕数据便顺序地改变(图5A-5D)。结果,用户一面观看顺序地改变的一个选择的屏幕,一面顺序地选择性别数据及诸如发型、眼睛与眉毛等面部特征数据项。
图8A为表示一个光标开关中断例程的流程图。当用要求的部位图形的一种组合建立一个所要求的面部图象时,操作光标开关3来选择性别数据、面部特征数据等。当操作了光标开关3时,控制便传送给光标开关中断例程。首先在步骤S80例如用CPU1中的一个显示标志的值判定现在是否正在显示要求用户选择一种性别或图5A-5D的各部位的屏幕数据。这一判定涉及是否在显示器12上显示某一屏面。如果当前不在显示选择的画面,便不必要显示光标K的位置。当判定不在显示选择的屏幕数据时,当前的例程便返回。
当操作光标开关3时,如果判定正在显示选择的画面数据,控制便进入下一步骤S82,根据这次操作光标开关3时的光标K的位置改变现在在工作RAM9中地址(M1+OFFSET2)上设定的选择一种性别与一个部位图形号的数据项。
例如,当判定M1=1时,则根据这一次操作光标开关3时的光标K的位置改变存储在(OFFSET2+1)上的“性别”数据。因此,如果这一次操作光标开关3时光标K的位置在显示图5A的“性别”选择屏面的状态中从“02”改变到“01”,则性别数据根据“01”的位置改变成“01(男)”。如果光标开关3的光标K的位置从“01”改变到“02”,则性别数据根据“02”的位置改变到“02(女)”。
当判定M1=2时,则存储在地址(OFFSET2+2)上的“发型”数据(部位图形号)根据这一次操作光标开关3时的光标K的位置改变。因此,如果在显示图5B的“发型选择屏面”的状态中,这一次操作光标开关3时将光标K的位置设定在“01”,“02”,…之一上,则存储在地址(OFFSET2+2)上的一个部位图形号数据根据这一位置改变到对应于“7∶3分头”发型、“光头”发型、…中适当的一种的一个部位图形号。
在步骤S84,光标K在显示器12上的显示位置根据上述数据改变而改变。
在步骤S86,判定寄存器15的值是否为“1”,即判定屏幕数据是否是用于确定一种性别的。结果,当判定M1=“1”时,控制传送到步骤S88,在那里判定地址(OFFSET2+1)上的数据是否表示男性。
如果是,则为了将指针的值从对应于存储表示面部特征数据的地址数据的地址(OFFSET3+1)的一个部位“发型”的单元顺序地增加到另一个部位的一个单元,将一个指针N的值设定在“1”上。
在步骤S92,将表示“男性”的“1”设置在对应于地址(OFFSET3+1)的面部特征(发型)数据的最高位(在用a指定的性别数据单元上)的位置上。
在步骤S94,将指针N的值增加到N=2。在步骤S96,为了使存储表示面部特征数据的地址数据的一个区域中的一直到最大地址(OFFSET3+6)上的面部特征数据的MSB(最高位)都设置为“1”而判定N是否等于7。由于现在N不是7,控制返回到步骤S92去重复一个类似于刚才提到的进程。这样,由于现在N=2,将地址(OFFSET3+2)上的数据项的MSB设置为“1”。类似地,将地址(OFFSET4+3),…,(OFFSET4+6)上的各数据的MSB设置为“1”。当在步骤S96,N=7时,便结束当前的光标开关中断例程,而控制返回到主程序。
当步骤S88的判定为否时,或者判定地址(OFFSET3+M1)上的数据不表示男性而是表示女性的“02”时,则控制传送到步骤S98,在那里将指针N设置成“1”。
在步骤S100,将地址(OFFSET3+N)上的数据的MSB设置为“0”。由于这时N=“1”,首先将地址(OFFSET3+1)上的数据的MSB设置为“0”。然后在步骤S102增加指针N。
此后,类似地将地址(OFFSET3+3)至(OFFSET3+6)上的各数据项的MSB顺序地设置为“0”。
当在步骤S104,N=7时,便结束当前的光标开关中断例程而控制返回到主程序。
当在步骤S86判定寄存器15的值不是“1”时,控制传送到步骤S106,在那里将地址(OFFSET2+M1)上的数据传送到一个部位图形号单元c,在那里图3B的部位图形号数据是存储在用地址(OFFSET3+(M1-1))表示的一个区域中的。从而,将对应于用光标开关3指定的光标K的位置上的数据的一个部位图形号码数据传送给面部特征数据存储器的一个部位图形号码单元c。
在步骤S106之后,便结束光标开关中断例程而控制返回到主程序。
当在步骤S80判定时显示标志的判定结果不是“1”时,则控制传送到图8B的一个进程而首先进入其步骤S108,在那里判定角度校正标志是否为“1”。当角度校正开关6被接通时,该标志变成“1”。此时,即使显示标志为“0”,在这一例程中也在显示器12上显示面部图象。除非操作了角度校正开关6,该标志成为“0”。因此,不显示面部图象。这是因为除非面部图象显示在显示器12上,否则可能校正面部图象的一个部位图形的角度。
当在步骤S108判定角度校正标志为“0”时,控制进入步骤S110,在那里擦除光标显示,结束当前的光标开关中断例程,而控制返回到主程序。
当在步骤S108判定角度校正标志为“1”时,便同时判定已经操作了角度校正开关6,控制进入步骤S112,在那里确定光标开关3的操作结果。由于光标开关3是例如由一个按钮式上下开关构成的,当要使光标位置上升时按上方开关,而要使光标位置下降时则按下方开关。
如果按了上方开关,控制便进入步骤S114,在那里增加指针N。从而,在下一个循环中N=2。在步骤S116判定N是否等于6,这一值超过了最大“5”,这是为了确认是否已经用光标指定了全部5个号码来改变左右眼睛、左右眉毛及嘴的5个部位图形的对应角度。
除非N=6,控制都进入步骤S120。如果判定N=6,则控制进入步骤S118,在那里将指针N的值返回到“1”而控制进入步骤S120。从而,通过顺序地按下角度校正开关6的上方开关,指针N的值便增加“1”,以最终指定一个所要求的部位图形。
除非在步骤S112操作了上方开关,否则判定已按下了下方开关而控制进入步骤S122,在那里将指针N的值减1。这样,在下一个循环中,指针N的值便减少了“1”。然后,在步骤S124,判定N是否等于0。如果是,控制进入步骤S126,将指针N的值增加到“5”。然后,控制进入步骤S120。除非N=0,否则控制跳过步骤S126到步骤120。这样,通过顺序按下光标开关3的向下开关,指针N的值减少“1”以最终指定一种所要求的部位图形。
在各步骤S120、S128-S134中,判定指针N的值是“1”-“5”中哪一个。当判定指针N的值为“1”时,控制进入步骤S136,在那里将光标显示在VRAM11上的左眼的部位图形的屏幕位置上。这样,按照操作员操作光标开关3,便将光标显示在显示器12上“左眼”部位的图形位置上。在步骤S136之后,结束当前例程中的进程而控制返回到主程序。
当判定指针N的值为“2”时,控制进入步骤S138,在那里将光标显示在VRAM11上的右眼的部分图形的屏幕位置上。这样,光标按照操作员操作光标开关3显示在显示器12上“右眼”部位的图形的屏幕位置上。步骤S138之后,结束当前例程中的进程而控制返回到主程序。
当判定指针N的值为“3”时,控制进入步骤S140,将光标显示在VRAM11上左眉毛的部位图形的屏幕位置上。这样,光标按照操作员操作光标开关3显示在显示器12上“左眉毛”部位的图形的屏幕位置上。步骤S140之后,结束当前例程中的进程,而控制返回到主程序。
当判定指针N的值为“4”时,控制进入步骤S142,在那里光标显示在VRAM11上右眉毛的部位图形的屏幕位置上。这样,光标按照操作员操作光标开关3显示在显示器12上的“右眉毛”部位的图形的屏幕位置上。步骤S142之后,当前例程中的进程结束,而控制返回到主程序。
当判定指针N的值为“5”时,控制进入步骤S144,在那里将光标显示在VRAM11上半张嘴的部位图形的屏幕位置上。这样,光标按照操作员操作光标开关3显示在显示器12上的“半张嘴”部位的图形的屏幕位置上。步骤S144之后,当前例程中的进程结束,而控制返回到主程序。
图9为表示一个角度校正开关中断子例程的流程图。当操作角度校正开关6时,控制进入该角度校正开关中断例程。首先,在这一例程的步骤S200,检测显示标志以判定是否一个面部图象显示在显示器12上。当判定该图象被显示时,显示标志成为“1”,因为除非图象显示在显示器12上,否则即使操作了角度校正开关6,面部图象的部位图形也不会显示。当判定显示标志为“0”时,当前例程便结束,而控制返回到主程序。
当判定显示标志为“1”时,控制进入步骤S202,在那里将角度校正标志反相。在步骤S204,判定角度校正标志是否为“1”。在显示器12上显示面部图象时,每接通一次角度校正开关6便将角度校正标志反相一次。当在步骤S204判定角度校正标志为“0”时,控制进入步骤S206,擦掉显示在屏幕上的光标,而控制返回到主程序。
当在步骤S204判定角度校正标志为“1”时,在各步骤S208-S216判定指针N的值为“1”-“5”中哪一个。由于操作光标开关3而由光标开关中断例程的执行改变光标的位置,如上所述。
当判定指针N的值为“1”时,控制进入步骤S218,将光标显示在VRAM11上左眼的部位图形的屏幕位置上。这样,光标按照操作员操作光标开关3显示在显示器12上的“左眼”部位的图形的屏幕位置上。此后,执行一个转动角度开关中断例程来校正左眼的转动角度。步骤S218之后,当前例程中的进程结束,而控制返回到主程序。
当判定指针N的值为“2”时,控制进入步骤S220,将光标显示在VRAM11上右眼的部位图形的屏幕位置上。这样,光标按照操作员操作光标开关6显示在显示器12上“右眼”部位的图形的屏幕位置上。此后,执行转动角度开关中断例程来校正右眼的转动角度。步骤S220之后,当前例程中的进程结束,而控制返回到主程序。
当判定指针N的值为“3”时,控制进入步骤S222,将光标显示在VRAM上左眉毛的部位图形的屏幕位置上。这样,光标按照操作员操作光标开关3显示在显示器12上的“左眉毛”部位的图形的屏幕位置上。此后,执行转动角度开关中断例程来校正左眉毛的转动角度。步骤S222之后,当前例程中的进程结束,而控制返回到主程序。
当判定指针N的值为“4”时,控制进入步骤S224,将光标显示在VRAM11上右眉毛的部位图形的屏幕位置上。这样,光标便按照操作员操作光标开关3显示在显示器12上的“右眉毛”部位的图形的位置上。此后,执行转动角度开关中断例程来校正右眉毛的转动角度。步骤S224之后,当前例程中的进程结束,而控制返回到主程序。
当判定指针N的值为“5”时,控制进入步骤S226,将光标显示在VRAM11上半张嘴的部位图形的屏幕位置上。
这样,光标便按照操作员操作光标开关3显示在显示器12上的“半张嘴”部位的图形的位置上。此后,执行转动角度开关中断例程来校正这半张嘴的转动角度。步骤S226之后,当前例程中的进程结束,而控制返回到主程序。
图10A与10B为表示转动角度开关中断例程的流程图。当操作了转动角度开关6时,控制进入该转动角度开关中断例程。首先,在步骤S250检测显示标志是否为“1”以判定一个面部图象是否显示在显示器12上。当图象显示在显示器12上时,显示标志成为“1”。如果图象没有显示在显示器12上,即使操作了转动角度开关6也不能改变部位图形的转动角度。当判定显示标志为“0”时,当前例程结束,而控制返回到主程序。
当判定显示标志为“1”时,控制进入步骤S252,在那里判定角度校正标志是否为“1”。当判定角度校正标志为“0”时,当前例程同样结束,而控制返回到主程序。当判定角度校正标志为“1”时,则在步骤S254-S262判定指针N的值为“1”-“5”中哪一个。由于光标开关3的操作而由光标开关中断例程的执行改变光标的位置,如上所述。
当判定指针N的值为“1”时,控制进入步骤S264,校正存储在地址(OFFSET6+4)上的角度数据。由于“左眼”部位的图形的转动角度数据是存储在地址(OFFSET6+4)上的,转动角度开关7的当前操作将该数据校正到一个新的转动角度数据(例如,“左眼”部位的部位图形的一个增加的转动角度数据)。在步骤S226,“左眼”图象根据存储在地址(OFFSET6+4)上的角度数据绕坐标(左眼的转动位置)转动,其数据存储在OFFSET6上。从而,由于转动角度开关7的当前操作而左眼的部位图形转动了一个新的转动角度,并显示之。步骤S266之后,当前例程结束,而控制返回到主程序。
当判定指针N的值为.“2”时,控制进入步骤S268,校正存储在(OFFSET6+5)上的角度数据。由于复制角度数据或包含左眼的转动角度的复制角度的右眼转动角度数据是存储在地址(OFFSET6+5)上的,由转动角度开关7的当前操作将其校正到一个新的转动角度数据(例如,右眼的部位图形的一个增加的转动角度数据)。在步骤S270,“右眼”图象根据一个复制角度(其数据存储在(OFFSET6+5)上)绕复制坐标(即右眼的转动位置,它是左眼转动位置的一个复制,其数据存储在(OFFSET6+1)上)转动。从而,由转动角度开关7的当前操作将右眼的部位图形转动通过新的转动角度,并显示之。步骤S270之后,当前例程中的进程结束,而控制返回到主程序。
当判定指针N的值为“3”时,控制进入步骤S272,校正存储在(OFFSET6+2)上的角度数据。由于左眉毛的转动角度数据是存储在地址(OFFSET6+2)上的,它是通过转动角度开关7的当前操作校正到一个新的转动角度数据的(例如,左眉毛的部位图形的一个增加的转动角度数据)。在步骤S274,“右眉毛”图象根据存储在(OFFSET5+2)上的角度数据绕左眉毛的转动位置的坐标(其数据存储在(OFFSET5上)转动。这样,通过转动角度开关7的当前操作将左眉毛的部位图形转动通过该新的转动角度,并显示之。步骤S274之后,当前例程中的进程结束,而控制返回到主程序。
然后执行图10B的进程。当判定指针N的值为“4”时,控制进入步骤S276,校正存储在(OFFSET5+3)上的角度数据。由于复制角度数据或包含左眉毛的部位图形的转动角度的复制数据制成的右眉毛的部位图形的转动角度数据是存储在地址(OFFSET5+3)上的,它是通过转动角度开关7的当前操作校正到一个新的转动角度数据的(例如,右眉毛的部位图形的一个增加的转动角度数据)。在步骤S278,“右眉毛”图象根据一个复制角度(其数据存储在(OFFSET5+3)上)绕复制坐标(即右眉毛的转动位置,它是左眉毛的转动位置的一个复制,其数据存储在(OFFSET5+2)上)转动。从而,通过转动角度开关7的当前操作,将右眉毛的部位图形转动通过该新的转动角度,并显示之。步骤S278之后,当前例程中的进程结束,而控制返回到主程序。
当判定指针N的值为“5”时,控制进入步骤S280,校正存储在(OFFSET3+1)上的角度数据。由于半张嘴的部位图形的转动角度数据是存储在地址(OFFSET3+1)上的,它是通过转动角度开关7的当前操作校正到一个新的转动角度数据的(例如,半张嘴的部位图形的一个增加的转动角度数据)。在步骤S282,“半张嘴”图象根据存储在(OFFSET3+1)上的角度数据绕这半张嘴的转动位置的坐标(其数据存储在(OFFSET3上)转动。从而,通过转动角度开关7的当前操作,将半张嘴的部位图形转动通过该新的转动角度,并显示之。步骤S282之后,当前例程中的进程结束,而控制返回到主程序。
图11为表示位置校正开关中断子例程的流程图。当操作了位置校正开关8时,控制进入该位置校正开关中断例程。首先在步骤S300检测显示标志是否为“1”来判定一个面部图象是否显示在显示器12上。当判定图象是显示在显示器12上时,显示标志成为“1”。除非图象显示在显示器12上,否则即使操作了位置校正开关5,也不能校正面部图象的一个部位图形的位置。当判定显示标志为“0”时,当前例程例结束,而控制返回到主程序。
当判定显示标志为“1”时,控制进入步骤S302,判定位置校正开关5的向上开关是否接通。操作位置校正开关5来校正面部图象的一个部位图形的位置,尤其是一个眼睛图形,该开关由一个按钮式上下开关构成。在本实施例中,判定向上开关是否已经按下。当向上开关接通时,控制进入步骤S304,将地址(OFFSET6+2)与(OFFSET6+3)上的位置校正数据项增加“1”。由于位置校正数据(用于左眼的位置校正的)是存储在地址(OFFSET6+2)上的,而复制校正位置数据(即包含左眼的位置校正的复制的一个右眼校正位置)是存储在地址(OFFSET6+3)上的。因此,在步骤S304,将左右眼的校正位置数据项都增加“1”。
在步骤S306,将构成VRAM11上的“眼睛”图象数据的点的Y坐标增加“1”来移动左右眼睛的位置。从而,左右眼睛显示在显示器12上的升高的(Y坐标)位置上。在步骤S308,将位置坐标中的Y坐标(其数据存储在地址OFFSET6与(OFFSET6+1)上)增加“1”,然后控制返回到主程序。坐标数据(左眼的转动位置的)存储在地址OFFSET6,而复制坐标数据(即包含左眼的转动位置的复制的右眼转动位置)则存储在地址(OFFSET6+1)上。因此,在步骤S308,左右眼的转动位置的Y坐标都增加了“1”。
当向上开关不接通(或者当向下开关接通时),控制进入步骤S310,将地址(OFFSET6+2)与(OFFSET6+3)上的位置校正数据项增加“1”。位置校正数据(即左眼的位置校正数据)存储在地址(OFFSET6+2)上,而复制校正位置数据(即包含右眼的校正位置的一个复制的右眼校正位置数据)则存储在地址(OFFSET6+3)上。因此,在步骤S304,左右眼睛的校正位置的数据项都增加了“1”。在步骤S312,将构成VRAM11上的“眼睛”图象数据的点的Y坐标减小“1”来移动左右眼睛的位置。因此,左右眼睛便显示在显示器12上的一个降低(Y坐标)的位置上。在步骤S314,将位置坐标中的Y坐标(其数据项存储在地址OFFSET6与(OFFSET6+1)上)减小“1”,然后控制返回到主程序。坐标数据(左眼的转动位置)存储在地址OFFSET6,而复制坐标数据(包含左眼的转动位置的一个复制的右眼转动位置)则存储在地址(OFFSET6+1)上。因此,在步骤S314,左右眼睛的转动位置的Y坐标都减小了“1”。
图12A为表示一个显示开关中断例程的流程图。当操作显示开关4以在显示器12上显示一个面部图象或一个选择的屏面时,便启动该显示开关中断例程。
在这一情况中,首先在步骤S400,反相显示标志,每次操作显示开关4时便产生这一反相。
在步骤S402,判定显示标志是否为“1”。如果判定显示标志为“0”,则控制进入主程序。
当操作了显示开关4而显示标志成为“1”时,控制跳转到步骤S404,将指针M1的值返回到“1”。指针M1的值以下述方式对应于面部的部位。例如,M1=1对应于一种发型;M1=2对应于半个轮廓;M1=3对应于一只眼睛,等等。因此,为什么在步骤S404将指针M1的值返回到“1”的理由在于,首先确定发型的特征,及读出对应于操作员的操纵状态的部位图形的特征数据(例如,位置校正数据、转动角度数据),并显示在显示器12上。
在各步骤S4-6-S414,判定指针M1的值为“1”、“2”、“5”、“6”、“3”或“4”。
当判定指针M1的值为“1”,M1=“1”指定一种发型特征的数据。此时,控制进入步骤S416,将使用地址(M1+OFFSET3)上的数据作为起始地址,从部位图形ROM10中读取的,对应于作为屏幕数据的“发型”的面部特征数据的“发型”的部位图形数据传送到VRAM11。从而,在步骤S416,“发型”的部位图形便显示在显示器12上。
当在步骤S406判定M1的值不同于“1”时,控制进入步骤S408。当在步骤S420判定M1的值为“7”时,当前例程结束,而控制返回到主程序。
当判定M1的值为“2”或“5”时,M1=2指定“半个轮廓”的特征数据,而M1=5指定“半个鼻子”的特征数据。此时,控制进入步骤S422,使用地址(M1+OFFSET3)上的数据作为起始地址,从部位图形ROM10中读取对应于作为屏幕数据的内容的“半个轮廓”或“半个鼻子”的面部特征数据的左半面部图象上的“半个轮廓”或“半个鼻子”的部位图形数据,并将其传送到VRAM11。从而作为左半面部的特征的“半个轮廓”或“半个鼻子”部位的图形便显示在显示器12上(图13A)。
在步骤S424,然后将图象数据复制到与VRAM11上一个特定的X坐标的位置轴对称的VRAM11上的一个位置中。然后,控制进入步骤S418。从而,复制了对应于面部图象的特征(轮廓或鼻子)的右半面部图象上的“半个轮廓”与“半个鼻子”部位的图形。从而,右半个面部上的“半个轮廓”或“半个鼻子”的部位图形便存储在VRAM11上对应的X坐标位置上。从而,将右半个面部的部位图形与左半个面部的对应部位图形(这些部位图形的数据已经存储在“半个轮廓”或“半个鼻子”部位图形的X坐标位置上)组合在一起,然后将得到的整个部位图形显示在显示器12上(图13B)。
当判定指针M1的值为“6”时,M1=6指定“半张嘴”的特征数据。此时,控制进入步骤S426,将存储在地址(M1+OFFSET3)上的数据的首部坐标数据存储在地址OFFSET4上。此时,工作RAM9中地址(M1+OFFSET3)上的数据便是用于指定一种面部特征数据的地址数据。当判定M1=“6”时,这便是用于指定半张嘴的特征数据的地址数据。因此,左半张嘴的坐标数据是作为左半张嘴的转动中心的坐标数据存储在工作RAM9中地址OFFSET4上的。
在步骤S428,用存储在地址(M1+OFFSET3)上的数据作为起始地址读取数据,并将其传送到VRAM11。因此,作为其左边一半的面部特征的“嘴”部位的左半个图形便显示在显示器12上。
在步骤S430,然后在VRAM11上与一个特定的X坐标的位置轴对称的一个位置上复制数据。这样,便复制了对应于面部图象的“嘴”的左半张“嘴”的部位图形的特征。从而,将“嘴”部位的右半个图形存储在VRAM11上“半张嘴”部位的图形的X坐标位置上。从而,将嘴的右半部位图形与对应的嘴的左半部位(其部位图形数据已存储在X坐标位置上)组合在一起,然后将得到的整个部位图形显示在显示器12上(图13B)。在步骤S432,根据角度数据(存储在地址(OFFSET4+1)上的)将图象绕坐标(其数据存储在地址OFFSET4上)转动。此时,“半张嘴”的转动中心的位置的坐标数据是存储在地址OFFSET4上的。“半张嘴”图形转动通过的角度数据是存储在地址(OFFSET4+1)上的。因此,将“嘴”的部位图形绕坐标(其数据存储在地址OFFSET4上)转动一个转动角度(其数据存储在地址(OFFSET4+1)上,并将得到的嘴图象显示在显示器12上。步骤S432之后,控制进入步骤S418。
当判定指针M1的值为“4”时,则执行图12B的进程,M1=4指定一条“眉毛”的特征数据。此时,控制进入步骤S434,将存储在地址(M1+OFFSET3)上的数据的首部的坐标数据存储在地址OFFSET5上。此时,工作RAM9中地址(M1+OFFSET3)上的数据为用于指定面部图象的特征数据的地址数据。当判定M1=“4”时,这便是用于指定眉毛的特征数据的地址数据。从而,左眉毛的坐标数据是作为左眉毛的转动中心的坐标数据存储在工作RAM9中地址OFFSET5上的。
在步骤S436,计算出与VRAM11上一个特定X坐标位置轴对称的一个VRAM11上的位置的坐标数据并将其存储在地址(OFFSET5+1)上。这样,便存储了对应于作为左眉毛的转动中心的相同Y坐标位置的右眉毛的转动中心的坐标数据。
在步骤S438,使用地址(M1+OFFSET3)上的数据作为起始地址读取屏幕数据,并将其传送给VRAM11。这样,便从部位图形ROM10中读取了对应于作为面部图象特征的“眉毛”的左眉毛的图形数据,并将其显示在显示器12上。在步骤S440,将屏幕数据复制到与VRAM11上一个特定的X坐标位置轴对称的VRAM11上的一个位置上。从而,作为面部图象特征的左眉毛的部位图形便复制成了右眉毛,并且其部位图形被显示在显示器12上。最后,显示左右两条眉毛。
在步骤S444,根据地址(OFFSET5+2)上的角度数据,绕坐标(其数据存储在地址OFFSET5上)转动读入VRAM11上的屏幕数据。此时,左眉毛的转动中心的位置的坐标数据存储在地址OFFSET5上。左眉毛图形转动通过的角度数据存储在地址(OFFSET5+2)上。从而,左眉毛的部位图形绕坐标(其数据存储在地址OFFSET5上)转动一个转动角度(其数据存储在地址(OFFSET5+2)上),并将得到的眉毛图形显示在显示器12上。
在步骤S446,根据地址(OFFSET5+3)上的角度数据,将复制到VRAM11上的屏幕数据绕坐标(其数据存储在地址(OFFSET6+1)上)转动。此时,右眉毛的转动中心的位置的复制坐标数据存储在地址(OFFSET6+1)上。右眉毛图形转动通过的角度的复制数据存储在地址(OFFSET5+3)上。从而,右眉毛的部位图形绕坐标(其数据存储在地址(OFFSET6+1)上)转动一个转动角度(其数据存储在地址(OFFSET5+3)上),并且得到的眉毛图形显示在显示器12上。步骤S446之后,控制进入步骤S418。
当判定指针M1的值为“3”时,便执行图12C的进程。M1=3指定一只“眼睛”的特征数据。此时,控制进入步骤S448,将存储在地址(M1+OFFSET3)上的数据的首部的坐标数据存储在地址OFFSET6上。此时,工作RAM9中地址(M1+OFFSET3)上的数据是用于存储面部图象的特征数据的地址数据。当判定M1=“3”时,它便是用于指定双眼的特征数据的地址数据。从而,左眼的坐标数据是作为左眼的转动中心的坐标数据存储在工作RAM9中地址OFFSET6上的。
在步骤S450,计算出与VRAM11上一个特定的X坐标位置轴对称的VRAM11上的一个位置的坐标数据,并将其存储在地址(OFFSET6+1)上。从而,存储了对应于作为左眼的转动中心的相同Y坐标位置的右眼的转动中心的坐标数据。
在步骤S452,根据地址(OFFSET6+2)上的校正数据将地址OFFSET6上的坐标数据转换成一个Y坐标。地址OFFSET6上的坐标数据表示左眼的转动中心。地址(OFFSET6+2)上的位置校正数据是用于校正左眼的位置的。从而,左眼的部位图形的位置相对于由该坐标(其数据存储在OFFSET6上)表示的一个第一位置向上或向下(在Y坐标变化方向上)调整了地址(OFFSET6+2)上的校正数据,并显示之。
在步骤S454,根据地址(OFFSET6+3)上的校正数据,将地址(OFFSET6+1)上的坐标数据转换成一个Y坐标数据。地址(OFFSET6+1)上的坐标数据是右眼的转动中心的复制坐标数据。地址(OFFSET6+3)上的数据是用于校正右眼的位置的复制位置校正数据。这样,右眼的部位图形的位置便相对于由地址(OFFSET6+1)上的坐标数据所表示一个第一位置(在Y坐标变化方向上)或向下调整了地址(OFFSET6+3)上的复制位置校正数据,并显示之。
在步骤S456,使用地址(M1+OFFSET3)上的数据作为起始地址读取屏幕数据,并将其传送给VRAM11。从而,作为面部图象的特征之一的左眼的部位图形便显示在显示器12上。在步骤S458,将该屏幕数据复制到与VRAM11上的一个特定的X坐标位置轴对称的VRAM11上的一个位置上。这样,便将作为面部图象的特征的左眼的图形复制成右眼的图形,然后将其显示在显示器12上。最后,作为一个单元显示左右双眼。
在步骤S460,根据地址(OFFSET6+2)上的位置校正数据将读取到VRAM11上的图象移动到一个位置。从而,左眼的位置移动了对应于地址(OFFSET6+2)上的位置校正数据的一个量,并显示之。
在步骤S462,根据地址(OFFSET6+3)上的复制位置校正数据移动复制VRAM11上的图象。从而,右眼的位置移动了一个对应于地址(OFFSET6+3)上的复制位置校正数据的量,并显示之。
在步骤S464,根据地址(OFFSET6+4)上的角度数据,绕坐标(其数据存储在地址OFFSET6上)转动读到VRAM11上的屏幕数据。此时,左眼图形的转动中心的位置的坐标数据存储在地址OFFSET6上。左眼图形转动通过的角度数据存储在地址(OFFSET6+4)上。从而,左眼的部位图形绕坐标(其数据存储在地址OFFSET6上)转动了一个转动角度(其数据存储在地址(OFFSET6+4)上),并显示得到的转动后的眼睛图形。
在步骤S466,根据地址(OFFSET6+5)上角度数据,绕坐标(其数据存储在地址(OFFSET6+1)上)转动复制到VRAM11上的屏幕数据。此时,右眼图形的转动中心的位置的复制坐标数据存储在地址(OFFSET6+1)上。右眼图形转动通过的复制角度数据存储在地址(OFFSET6+5)上。从而,右眼的部位图形绕复制坐标(其数据存储在地址(OFFSET6+1)上)转动了复制的转动角度(其数据存储在地址(OFFSET6+5)上),并显示之。步骤S466之后,控制进入步骤S418。
如上所述,当接通显示开关4时,对应于面部图象的特征的一个面部图象的部位图形,顺序地显示在显示器12上,例如,以发型、半个轮廓、一只眼睛、…的次序显示。更具体地,除了发型以外的构成面部图象的左半边部位图形的数据项是从工作RAM9中对应的地址上读取并显示的。右半边部位图形是根据读取的左半边部位图形复制的,并将互相对应的左右部位的图形组合在一起。需要时,校正与显示组合部位图形的位置与角度。
简言之,在本实施例中的上述程序的执行过程中,接通电源,顺充地选择构成面部图象的左半边的各部位的要求的左边图形,并首先显示面部的左半边的部位的图形的一个第一半面部图象H1,如图13A中所示。面部图象的第一半面部图象H1用作复制的原版,并沿一条通过VRAM11的中心V的垂直线翻转成面部图象的右半边的部位图形的一个第二半面部图象H2。然后,在VRAM11上将由部位图形构成的第一半面部图象H1与第二半面部图象H2组合成一个合成的面部图象H3,然后显示这一图象H3(除外发型K1的部分图形),如图13B中所示。如果选择了作为一个完整部位的一个单一的完整的部位图形的一种所要求的发型K1,则将其与VRAM11上的合成面部图象H3组合在一起,然后显示之,如图13C中所示。
例如,通过将眉毛的左右部位图形M1、M2转动通过相同的角度,便显示了由于眉毛部位图形M1、M2的转动而具有不同外表与给不同影象的一个面部图象H5,如图13D中所示。
因此,除了发型以外,只需要在部位图形ROM10中存储构成半边面部图象的各部位图形的数据,而不需要图2中阴影部分存储区域中的部位图形数据。因此,与使用其它系统所需的存储器容量相比,本发明的存储器容量减少了一半。换言之,在原来的部位图形ROM10的容量中能存储的部位图形种数翻了一翻。相应地,增加了部位图形组合的数目,而可以形成更接近用户要求的一个面部图象。
当将本实施例的设备安装在诸如电子笔记本之类的电子设备上时,可使用部位图形的减小了的存储器容量。从而提供了一种体积小、重量轻的电子设备。
本创造性设备不仅能应用于电子笔记本,也能广泛地应用于其它不同的物品及领域。
虽然在本实施例中所示出的是其数据存储在部位图形ROM10中的作为一个单一的部位的发型部位图形K1,但也可像半个轮廓、一只眼睛、及半张嘴那样在部位图形ROM10A中只存储一半发型部位图形数据,如图14中所示。
另外,根据本发明,借助于只存储构成面部或目标的图象的部位的一半图形的一个存储器,除了该面部图象,其它诸如一位女性的面部图象、一个动物的面部图象、一个外星人的面部图象及具有对称的左右两个部位的一个目标的图象都能以上述类似的方式容易地生成。
一个部位图形的角度与位置可以分别改变到任何角度与任何位置。
完成的面部图象可以不仅显示在显示器12上,还可通过图1的打印机13印刷在一张标签条或一张普通的纸上。
根据本发明,为构成一个目标的一半的各部位存储了多种部位图象数据。任何图象都是从这多种部位图象数据中为各部位选择的。再将选中的部位图象组合成一个第一半目标图象。与第一半目标图象对称的一个第二半目标图象是根据该第一半目标图象形成的。再将第一与第二半目标图象组合成一个完整的目标图象。因此,与需要存储构成完整的目标图象的各部位的多种部位图象数据的情况相比,本发明只需要存储构成半个目标的各部位的多种部位图象数据。即,各部位图形的图象的存储量减少了一半,从而相应地极大减少了所使用的存储容量及整个设备的制造成本、尺寸与重量。
Claims (20)
1、一种目标图象建立设备,包括:
存储装置,用于为构成半个目标图象的各部位存储多种图象数据;
第一半目标图象生成装置,用于从存储在所述存储装置中的多种图象数据中为各部位选择一种图象数据,及用于组合所选中的图象数据以构成一个第一半目标图象;
第二半目标图象生成装置,用于在所述第一半目标图象的基础上,构成一个与所述第一半目标图象生成装置所构成的第一半目标图象对称的第二半目标图象;以及
目标图象生成装置,用于组合由所述第一半目标图象生成装置构成的第一半目标图象与由所述第二半目标图象生成装置构成的第二半目标图象,以构成一个完整的目标图象。
2、根据权利要求1的一种目标图象建立设备,还包括:
输出装置,用于输出完整的目标图象数据。
3、根据权利要求1的一种目标图象建立设备,其中的目标图象为一个面部图象,以及存储装置为构成面部图象一半的各部位存储多种图象数据。
4、根据权利要求1的一种目标图象建立设备,其中的目标图象为一个面部图象,以及该存储装置为构成半个面部图象除了表示一发型的一个部位图象外的各部位,存储多种图象数据。
5、根据权利要求1的一种目标图象建立设备,其中的第一半目标图象生成装置包括选择装置,用于从各部位的多种部位图象中逐个地选择任何部位图象,这些部位图象数据存储在该存储装置中;第一生成装置,用于将选中的部位图象组合成一个第一半目标图象;以及第一半目标图象存储装置,用于存储该第一半目标图象;
该第二半目标图象生成装置包括第二生成装置,用于将第一半目标图象绕一个预定的位置翻转,以复制一个与第一半目标图象对称的第二半目标图象;以及第二半目标图象存储装置,用于存储第二半目标图象数据;以及
该目标图象生成装置包括第三生成装置,用于将第一与第二半目标图象组合成一个完整的目标图象;以及目标图象存储装置,用于存储该完整的目标图象的数据。
6、根据权利要求1的一种目标图象建立设备,还包括:
位置改变装置,用于改变由目标图象生成装置生成的完整图象的至少一个部位的位置与角度中的至少一种;以及
目标图象输出装置,用于将完整目标图象的角度与位置中至少一种改变了的至少一个部位,与完整目标图象的其余部位组合成一个新的图象并将其输出。
7、一种目标图象建立设备,包括:
第一存储装置,用于存储构成半个目标图象的部位中至少一个预定的部位的多种第一图象数据;
第二存储装置,用于存储构成除了该至少一个预定部位之外的半个目标图象的部位中的其它部位的多种第二图象数据;
第一半目标图象生成装置,用于从存储在第二存储装置中的多种第二图象数据中为各部位选择一种图象数据;用于从存储在第一存储装置中的多种第一图象数据中为各部位选择一种图象数据;以及用于将选中的第一与第二图象组合成一个第一半目标图象;
第二半图象生成装置,用于在第一半目标图象的基础上生成一个与第一半目标图象对称的一个第二半目标图象;以及
目标图象生成装置,用于将第一与第二半目标图象组合成一个完整的目标图象,及用于生成完整的目标图象。
8、根据权利要求7的一种目标图象建立设备,还包括:
输出装置,用于输出该完整的目标图象的数据。
9、根据权利要求7的一种目标图象建立设备,还包括:
位置改变装置,用于改变由该目标图象生成装置生成的完整的目标图象的至少一个部位的位置与角度中的至少一种;以及
目标图象输出装置,用于将完整的目标图象的位置与角度中至少一种改变了的至少一个部位与完整的目标图象的其余图象组合成一个新的目标图象,并将其输出。
10、根据权利要求7的一种目标图象建立设备,其中的目标图象为一个面部图象,并且其中至少一个预定的部位的多种第一图象(这些第一图象的数据是存储在第一存储装置中的)是用于一发型的,并且另一部位的多种第二图象(这些第二图象的数据是存储在第二存储装置中的)是用于除了该至少一个预定部位之外的不是发型的一个部位的。
11、根据权利要求7的一种目标图象建立设备,其中的第一半目标图象生成装置包括选择装置,用于从其数据存储在第二存储装置中的多种第二图象中选择任何一种第二图象,并用于从其数据存储在第一存储装置中的多种第一图象中选择任何一种第一部位图象;第一生成装置,用于将选中的第一与第二部位图象组合成一个第一半目标图象;以及第三存储装置,用于存储由第一生成装置生成的第一半目标图象数据;
该第二半目标图象生成装置包括第二生成装置,用于绕一个预定的位置将第一半目标图象生成装置生成的第一半目标图象翻转,以复制一个与第一半目标图象对称的第二半目标图象;以及第四存储装置,用于存储该复制的第二半目标图象的数据;以及
该目标图象生成装置包括第三生成装置,用于将第一与第二半目标图象组合成一个完整的目标图象;以及第五存储装置,用于存储该完整的目标图象数据。
12、一种目标图象建立设备,包括:
第一存储装置,用于存储构成半个目标图象的部位中的至少一个预定的部位的多种第一图象数据;
第二存储装置,用于存储构成除了该至少一个预定部位以外的半个目标图象的部位中的其它部位的多种第二图象数据;
第一半目标图象生成装置,用于从存储在第二存储装置中的多种第二图象数据中为各部位选择一种图象数据;用于从存储在第一存储装置中的多种第一图象数据中为各部位选择一种图象数据;以及用于将选中的第一与第二图象组合成一个第一半目标图象;
第二半目标图象生成装置,用于在该第一半目标图象的基础上生成一个与该第一半目标图象对称的第二半目标图象;以及
目标图象生成装置,用于将该第一与第二半目标图象组合成一个完整的目标图象,及用于生成完整的目标图象。
13、根据权利要求12的一种目标图象建立设备,还包括:
输出装置,用于输出该完整的目标图象数据。
14、根据权利要求12的一种目标图象建立设备,还包括:
位置改变装置,用于改变由该目标图象生成装置生成的完整的目标图象的至少一个部位的位置与角度中的至少一种;以及
目标图象输出装置,用于将完整的目标图象中位置与角度中至少一种改变了的该至少一个部位与完整的目标图象中的其余图象组合成一个新的目标图象并将其输出。
15、根据权利要求12的一种目标图象建立设备,其中的目标图象是为一个面部图象,并且其中其第一图象数据存储在第一存储装置中的该至少一个预定的部位的多种第一图象是用于一发型的,并且其第二图象数据存储在第二存储装置中的另一个部位的多种第二图象是用于除了该至少一个预定的部位以外的不是该发型的一个部位的。
16、根据权利要求12的一种目标图象建立设备,其中的第一半目标图象生成装置包括选择装置,用于从其图象数据存储在第二存储装置中的多种第二图象中选择任何一种第二图象,及用于从其第一图象存储在第一存储装置中的多种第一图象中选择任何一种第一部位图象;第一生成装置,用于将选中的第一与第二部位图象组合成一个第一半目标图象;以及第三存储装置,用于存储由该第一生成装置生成的第一半目标图象数据;
该第二半目标图象生成装置包括第二生成装置,用于绕一个预定的位置将第一半目标图象生成装置生成的第一半目标图象翻转,以复制一个与该第一半目标图象对称的第二半目标图象;以及第四存储装置,用于存储复制的第二半目标图象数据;以及
该目标图象生成装置包括第三生成装置,用于将第一与第二半目标图象组合成一个完整的目标图象;以及第五存储装置,用于存储该完整的目标图象数据。
17、一种目标图象建立方法,包括:
一个第一步骤,从构成半个目标图象的各部位的多种图象中为各部位选择一种图象数据,这一目标图象的数据是存储着的;
一个第二步骤,将多个部位的选中的图象组合成一个第一半目标图象;
一个第三步骤,在该第一半目标图象的基础上生成一个与该第一半目标图象对称的第二半目标图象;以及
一个第四步骤,将该第一与第二半目标图象组合成一个完整的目标图象。
18、根据权利要求17的一种目标图象建立方法,还包括:
一个第五步骤,输出该完整的目标图象。
19、根据权利要求17的一种目标图象建立方法,还包括:
一个第五步骤,改变在第四步骤中生成的完整的图象的至少一个部位的位置与角度中的至少一种;以及将完整图象的改变了位置与角度中的至少一种的至少一个部位与其余图象组合成一个新的目标图象,并将其输出。
20、一种目标图象存储设备,用于与一种目标图象建立设备一起使用,在该建立设备中,构成半个目标图象的部位的任何部位图象是由选择装置选择的,为各部位逐个地从多种部位图象中选择,并且所选择的图象是组合成一个目标图象的,
该目标图象存储设备包括:
第一存储装置,用于存储构成要由该目标图象建立设备生成的目标图象的两半之一的各部位的多种图象;
第二存储装置,用于存储由任何图象的一种组合构成的一个第一半目标图象的数据,这些图象是由选择装置从其数据存储在该第一存储装置中的各部位的多种图象中选择的,及用于存储形成在第一半目标图象的基础上的、与该第一半目标图象对称的第二半目标图象的数据,使这些第一与第二半目标图象组合成一个完整的目标图象。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP164211/93 | 1993-06-07 | ||
JP164211/1993 | 1993-06-07 | ||
JP16421193A JP3298242B2 (ja) | 1993-06-07 | 1993-06-07 | 顔画像作成装置および顔画像作成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1099543A true CN1099543A (zh) | 1995-03-01 |
CN1120626C CN1120626C (zh) | 2003-09-03 |
Family
ID=15788783
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN94107205A Expired - Fee Related CN1120626C (zh) | 1993-06-07 | 1994-06-07 | 目标图象建立设备和方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US5563992A (zh) |
JP (1) | JP3298242B2 (zh) |
CN (1) | CN1120626C (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106375663A (zh) * | 2016-09-22 | 2017-02-01 | 宇龙计算机通信科技(深圳)有限公司 | 终端拍摄方法和终端拍摄装置 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2603445B2 (ja) * | 1994-11-10 | 1997-04-23 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 髪画像適合方法及びコンピュータ・システム |
US6661906B1 (en) * | 1996-12-19 | 2003-12-09 | Omron Corporation | Image creating apparatus |
JP4126745B2 (ja) | 1997-09-04 | 2008-07-30 | 株式会社セガ | データ処理装置及びその処理方法並びに媒体 |
CA2236388A1 (en) | 1998-04-29 | 1999-10-29 | Inter Quest | Method and apparatus for creating facial images |
CA2273188A1 (en) * | 1999-05-28 | 2000-11-28 | Interquest Inc. | Method and apparatus for encoding/decoding image data |
US6206750B1 (en) | 1998-10-30 | 2001-03-27 | Mattel, Inc. | Personalized toys and methods for manufacturing and delivering the same |
JP3593943B2 (ja) * | 1999-12-28 | 2004-11-24 | コナミ株式会社 | ゲーム装置、画像表示方法、及び、記録媒体 |
JP4986279B2 (ja) * | 2006-09-08 | 2012-07-25 | 任天堂株式会社 | ゲームプログラムおよびゲーム装置 |
US20120182315A1 (en) * | 2011-01-18 | 2012-07-19 | Kenneth Alan Garzo | Make a Face |
US10332296B2 (en) * | 2016-07-05 | 2019-06-25 | Ubitus Inc. | Overlaying multi-source media in VRAM |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4701752A (en) * | 1985-10-24 | 1987-10-20 | International Business Machines Corp. | Mirror inverse function in an interactive graphics system |
US4823285A (en) * | 1985-11-12 | 1989-04-18 | Blancato Vito L | Method for displaying hairstyles |
US5060171A (en) * | 1989-07-27 | 1991-10-22 | Clearpoint Research Corporation | A system and method for superimposing images |
GB8928058D0 (en) * | 1989-12-12 | 1990-02-14 | Crosfield Electronics Ltd | Digital image generation |
US5404426A (en) * | 1991-05-21 | 1995-04-04 | Hitachi, Ltd. | Method of displaying hair style and apparatus for the same |
US5375195A (en) * | 1992-06-29 | 1994-12-20 | Johnston; Victor S. | Method and apparatus for generating composites of human faces |
-
1993
- 1993-06-07 JP JP16421193A patent/JP3298242B2/ja not_active Expired - Fee Related
-
1994
- 1994-06-02 US US08/252,903 patent/US5563992A/en not_active Expired - Lifetime
- 1994-06-07 CN CN94107205A patent/CN1120626C/zh not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106375663A (zh) * | 2016-09-22 | 2017-02-01 | 宇龙计算机通信科技(深圳)有限公司 | 终端拍摄方法和终端拍摄装置 |
Also Published As
Publication number | Publication date |
---|---|
US5563992A (en) | 1996-10-08 |
JPH06348796A (ja) | 1994-12-22 |
JP3298242B2 (ja) | 2002-07-02 |
CN1120626C (zh) | 2003-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1047680C (zh) | 脸部图像数据处理装置 | |
CN1120626C (zh) | 目标图象建立设备和方法 | |
CN1269099C (zh) | 检测和减少图像中膺彩色的方法 | |
CN1095140C (zh) | 进度管理装置 | |
CN1149468C (zh) | 确定gui上菜单项布局的方法和装置 | |
CN1198255C (zh) | 显示设备和显示方法 | |
CN1184797C (zh) | 图像显示系统、投影机及图像处理方法 | |
CN1196009C (zh) | 投影机、图像显示系统、数据保存及显示方法 | |
CN1265304C (zh) | 预览设备、电子设备以及图像形成装置 | |
CN1445650A (zh) | 面向像素子分量的图像的硬件加强图形加速 | |
CN1215400C (zh) | 投影机及图像处理方法 | |
CN1320516C (zh) | 液晶显示装置 | |
CN1268710A (zh) | 数据库检索装置及方法 | |
CN1783075A (zh) | 用于显示网络数据的方法、设备、处理器配置 | |
CN1595413A (zh) | 眼镜镜片的制造系统、制造方法、程序及存储介质 | |
CN1383532A (zh) | 图像指定文件的制作和使用了该文件的图像的播放 | |
CN1326575A (zh) | 灰度级和彩色显示方法和装置 | |
CN1045195A (zh) | 过程控制终端 | |
CN101065251A (zh) | 基于市场的标签制作系统和方法 | |
CN1237415C (zh) | 图像成形装置 | |
CN1932750A (zh) | 信息处理装置、信息处理方法和程序 | |
CN1168186A (zh) | 图象生成系统和方法 | |
CN1399244A (zh) | 字符显示设备、方法和程序以及用于它们的记录媒体 | |
CN1682273A (zh) | 根据背光亮度或观众偏好改变字符显示特性的显示器 | |
CN1093953C (zh) | 字符图形发生装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20030903 Termination date: 20120607 |