具体实施方式
如图2所示的,为本申请实施例提供的用户设备主体(比如智能手机等移动终端)的一种实施方式的结构示意图。结合图2可知,该用户设备主体100还可以包括处理器103,外部存储器接口104,内部存储器105,通用串行总线(universal serial bus,USB)接口106,充电管理模块107,电源管理模块108,电池109,天线1,天线2,移动通信模块110,无线通信模块111,音频模块112,扬声器113,受话器114,麦克风115,耳机接口116,传感器模块117,按键118,马达119,指示器120,摄像头121,以及用户标识模块(subscriberidentification module,SIM)卡接口122等。其中传感器模块117可以包括压力传感器1171,陀螺仪传感器1172,气压传感器1173,磁传感器1174,加速度传感器1175,距离传感器1176,接近光传感器1177,指纹传感器1178,温度传感器1179,触摸传感器1180,环境光传感器1181,骨传导传感器1182等。
上述实施例示出的用户设备主体100的输入装置可以包括:显示屏102、传感器模块117、按键118、马达119、摄像头121等。
本领域技术人员可以理解,图2示出的用户设备主体的结构并不构成对本申请用户设备主体的限定,本申请的用户设备主体可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
其中,处理器103可以包括一个或多个处理单元,例如:处理器103可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphicsprocessingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。其中,控制器可以是用户设备的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器103中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器103中的存储器为高速缓冲存储器。该存储器可以保存处理器103刚用过或循环使用的指令或数据。如果处理器103需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器103的等待时间,因而提高了系统的效率。
在一些实施例中,处理器103可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integratedcircuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器103可以包含多组I2C总线。处理器103可以通过不同的I2C总线接口分别耦合触摸传感器1180,充电器,闪光灯,摄像头121等。例如:处理器103可以通过I2C接口耦合触摸传感器1180,使处理器103与触摸传感器1180通过I2C总线接口通信,实现用户设备的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器103可以包含多组I2S总线。处理器103可以通过I2S总线与音频模块112耦合,实现处理器103与音频模块112之间的通信。在一些实施例中,音频模块112可以通过I2S接口向无线通信模块111传递音频信号,实现通过蓝牙耳机接听电话的功能。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块112与无线通信模块111可以通过PCM总线接口耦合。在一些实施例中,音频模块112也可以通过PCM接口向无线通信模块111传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器103与无线通信模块111。例如:处理器103通过UART接口与无线通信模块111中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块112可以通过UART接口向无线通信模块111传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器103与显示屏102,摄像头121等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器103和摄像头121通过CSI接口通信,实现用户设备的拍摄功能。处理器103和显示屏102通过DSI接口通信,实现用户设备的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器103与摄像头121,显示屏102,无线通信模块111,音频模块112,传感器模块117等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口106是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口106可以用于连接充电器为用户设备充电,也可以用于用户设备与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
可以理解的是,本实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对用户设备的结构限定。在另一些实施例中,用户设备也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块107用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块107可以通过USB接口106接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块107可以通过用户设备的无线充电线圈接收无线充电输入。充电管理模块107为电池109充电的同时,还可以通过电源管理模块108为用户设备供电。
电源管理模块108用于连接电池109,充电管理模块107与处理器103。电源管理模块108接收电池109和/或充电管理模块107的输入,为处理器103,内部存储器105,外部存储器,显示屏102,摄像头121,和无线通信模块111等供电。电源管理模块108还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块108也可以设置于处理器103中。在另一些实施例中,电源管理模块108和充电管理模块107也可以设置于同一个器件中。
用户设备的无线通信功能可以通过天线1,天线2,移动通信模块110,无线通信模块111,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。用户设备中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块110可以提供应用在用户设备上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块110可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块110可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块110还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块110的至少部分功能模块可以被设置于处理器103中。在一些实施例中,移动通信模块110的至少部分功能模块可以与处理器103的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器113,受话器114等)输出声音信号,或通过显示屏102显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器103,与移动通信模块110或其他功能模块设置在同一个器件中。
无线通信模块111可以提供应用在用户设备上的包括无线局域网(wirelesslocalarea networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequencymodulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块111可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块111经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器103。无线通信模块111还可以从处理器103接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,用户设备的天线1和移动通信模块110耦合,天线2和无线通信模块111耦合,使得用户设备可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivisionmultiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(globalnavigation satellite system,GLONASS),北斗卫星导航系统(beidounavigationsatellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
用户设备通过GPU,显示屏102,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏102和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器103可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏102用于显示图像,视频等。显示屏102包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dotlightemitting diodes,QLED)等。在一些实施例中,用户设备可以包括1个或N个显示屏102,N为大于1的正整数。
用户设备可以通过ISP,摄像头121,视频编解码器,GPU,显示屏102以及应用处理器等实现拍摄功能。
ISP用于处理摄像头121反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头121中。
摄像头121用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,用户设备可以包括1个或N个摄像头121,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当用户设备在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。用户设备可以支持一种或多种视频编解码器。这样,用户设备可以播放或录制多种编码格式的视频,例如:动态图像专家组(movingpicture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现用户设备的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口104可以用于连接外部存储卡,例如Micro SD卡,实现扩展用户设备的存储能力。外部存储卡通过外部存储器接口104与处理器103通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器105可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器103通过运行存储在内部存储器105的指令,从而执行用户设备的各种功能应用以及数据处理。内部存储器105可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储用户设备使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器105可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
用户设备可以通过音频模块112,扬声器113,受话器114,麦克风115,耳机接口116,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块112用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块112还可以用于对音频信号编码和解码。在一些实施例中,音频模块112可以设置于处理器103中,或将音频模块112的部分功能模块设置于处理器103中。
扬声器113,也称“喇叭”,用于将音频电信号转换为声音信号。用户设备可以通过扬声器113收听音乐,或收听免提通话。
受话器114,也称“听筒”,用于将音频电信号转换成声音信号。当用户设备接听电话或语音信息时,可以通过将受话器114靠近人耳接听语音。
麦克风115,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风115发声,将声音信号输入到麦克风115。用户设备可以设置至少一个麦克风115。在另一些实施例中,用户设备可以设置两个麦克风115,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,用户设备还可以设置三个,四个或更多麦克风115,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口116用于连接有线耳机。耳机接口116可以是USB接口106,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器1171用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器1171可以设置于显示屏102。压力传感器1171的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器1171,电极之间的电容改变。用户设备根据电容的变化确定压力的强度。当有触摸操作作用于显示屏102,用户设备根据压力传感器1171检测所述触摸操作强度。用户设备也可以根据压力传感器1171的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器1172可以用于确定用户设备的运动姿态。在一些实施例中,可以通过陀螺仪传感器1172确定用户设备围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器1172可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器1172检测用户设备抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消用户设备的抖动,实现防抖。陀螺仪传感器1172还可以用于导航,体感游戏场景。
气压传感器1173用于测量气压。在一些实施例中,用户设备通过气压传感器1173测得的气压值计算海拔高度,辅助定位和导航。
磁传感器1174包括霍尔传感器。用户设备可以利用磁传感器1174检测皮套200的开合。在一些实施例中,当用户设备是翻盖机时,用户设备可以根据磁传感器1174检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器1175可检测用户设备在各个方向上(一般为三轴)加速度的大小。当用户设备静止时可检测出重力的大小及方向。还可以用于识别用户设备的姿态,应用于横竖屏切换,计步器等应用。
距离传感器1176,用于测量距离。用户设备可以通过红外或激光测量距离。在一些实施例中,拍摄场景,用户设备可以利用距离传感器1176测距以实现快速对焦。
接近光传感器1177可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。用户设备通过发光二极管向外发射红外光。用户设备使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定用户设备附近有物体。当检测到不充分的反射光时,用户设备可以确定用户设备附近没有物体。用户设备可以利用接近光传感器1177检测用户手持用户设备贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器1177也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器1181用于感知环境光亮度。用户设备可以根据感知的环境光亮度自适应调节显示屏102亮度。环境光传感器1181也可用于拍照时自动调节白平衡。环境光传感器1181还可以与接近光传感器1177配合,检测用户设备是否在口袋里,以防误触。
指纹传感器1178用于采集指纹。用户设备可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器1179用于检测温度。在一些实施例中,用户设备利用温度传感器1179检测的温度,执行温度处理策略。例如,当温度传感器1179上报的温度超过阈值,用户设备执行降低位于温度传感器1179附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,用户设备对电池109加热,以避免低温导致用户设备异常关机。在其他一些实施例中,当温度低于又一阈值时,用户设备对电池109的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器1180,也称“触控面板”。触摸传感器1180可以设置于显示屏102,由触摸传感器1180与显示屏102组成触摸屏,也称“触控屏”。触摸传感器1180用于检测作用于其上或附近的触摸操作。触摸传感器1180可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏102提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器1180也可以设置于用户设备主体100的表面,与显示屏102所处的位置不同。
骨传导传感器1182可以获取振动信号。在一些实施例中,骨传导传感器1182可以获取人体声部振动骨块的振动信号。骨传导传感器1182也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器1182也可以设置于耳机中,结合成骨传导耳机。音频模块112可以基于所述骨传导传感器1182获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器1182获取的血压跳动信号解析心率信息,实现心率检测功能。
按键118包括开机键(也称开关按键),音量键等。按键118可以是机械按键,也可以是触摸式按键。用户设备可以接收按键输入,产生与用户设备的用户设置以及功能控制有关的键信号输入。
马达119可以产生振动提示。马达119可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏102不同区域的触摸操作,马达119也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器120可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口122用于连接SIM卡。SIM卡可以通过插入SIM卡接口122,或从SIM卡接口122拔出,实现和用户设备的接触和分离。用户设备可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口122可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口122可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口122也可以兼容不同类型的SIM卡。SIM卡接口122也可以兼容外部存储卡。用户设备通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,用户设备采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在用户设备主体100中,不能和用户设备主体100分离。
具体的,输入装置可以用于接收用户触发拍摄界面的操作,摄像头121拍摄得到图像数据,并将图像数据传送給处理器103。处理器103接收到图像数据后,可以对该图像数据进行进一步的处理,包括但不限于:识别图像中的图案、人脸和文字等,并确定所识别到的图案、人脸和文字的区域。
用户设备10的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本实施例以分层架构的Android系统为例,示例性说明用户设备10的软件结构。
图3为本申请实施例提供的用户设备的软件结构框图。结合图3可知:
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图3所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图3所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供用户设备10的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。2D图形引擎是2D绘图的绘图引擎。内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
基于上述用户设备10的结构,本申请实施例还提供了一种用于移动终端的身份证件扫描方法。该身份证件扫描方法可以在上述实施例提供的用户设备10中实现。可选的,该身份证件扫描方法的具体实施过程可以参考图4,图4为本申请实施例提供的证件扫描方法的一种实施方式的流程示意图。结合图4可知,可以按照下述步骤实施该身份证件扫描方法:
S101,对拍摄到的卡片物体的图像进行人脸识别,得到头像。
其中,人脸识别可以采用用户设备主体本地的人脸识别方式,比如通过3D结构光技术实现人脸识别,或者可以通过连接云端的方式,通过云端服务器进行人脸验证。
具体的,很多图案往往都是一些特定图案,用户设备主体可以进一步根据识别得到的图案,确定所述卡片物体的类型。例如:识别得到的图案为银联标志,则判定卡片物体为银行卡;再例如:识别得到卡片物体的背景图案为国徽且背景为蓝色的身份证背景,则判定卡片物体为身份证。
在具体应用中,在有需要进行实名认证(或扫描/上传身份证)的app里执行本实施例方案,具体可以进入实名认证页面,点击进入扫描上传卡片物体的页面,将卡片物体放置在某一平面,使手机与该平面平行;使卡片物体出现在拍照/上传页面的取景框里,且无需对齐,点击对焦即开始扫描。
S102,根据识别到的头像,获取所述卡片物体的位置和角度。
S103,根据所述卡片物体的位置和角度在拍摄界面中显示取景框。
其中,所述取景框的显示位置匹配所述拍摄界面中的卡片物体的位置,所述取景框的角度匹配所述拍摄界面中的卡片物体的角度。
本实施例中,通过人脸识别锁定卡片物体上头像(比如身份证件上的人像照片),并对头像扫描,找到头像照片的边缘分界点,确定卡片物体图像标识倾斜角度与矩形外框大小,鉴于卡片物体上头像照片的位置、大小、以及与卡片物体比例关系是固定的,因此依据图像标识的位置、大小、比例关系,计算出证件外轮廓,进而将证件从扫描图像中分离出来。
通过生成的取景框主动吻合拍摄到的卡片物体,用户可以省去对齐矩形框的过程,只需按照正常拍照流程即可完成扫描分离身份证等卡片物体的图像并上传。相较现有方式扫描大大节约时间,提升扫描/上传证件成功率。在实际应用中,原有扫描方式大约需要15-20秒且会出现无法对齐、对齐过程中手抖模糊等问题,成功率低,现有方式只需2-3秒,扫描/上传成功率也可大幅提升。
在本实施例中,步骤S102:所述根据识别到的头像,获取所述卡片物体的位置和角度,具体可以实现为:
根据所述卡片物体的类型,确定所述卡片物体的轮廓模板。根据所述头像在所述拍摄界面中的位置和角度,对照所述头像区域在所述卡片物体中预先配置的位置和角度,获取所述卡片物体的位置和角度。需要说明的是,预先配置的位置和角度,指的是轮廓模板中已经设置好的、固定的位置与大小比例关系,比如身份证中的头像区域位置和角度已有专门的国家标准和相关的设计规范,则国家标准、相关的设计规范中的位置和角度即为轮廓模板中预先配置的位置和角度,以便于由图像推导计算出证件外框轮廓。
其中,所述轮廓模板中包括了所述卡片物体的默认形状,和头像区域在所述卡片物体中预先配置的位置和角度。例如:当手机等用户设备主体通过人脸识别检测到证件图像上的头像时,用矩形框M锁定该头像如图5a所示,并识别头像上下朝,计算矩形框M与画面水平位置的夹角α,向如图5b。
进一步的,还包括:根据所述头像在所述拍摄界面中的位置和朝向,得到所述头像的倾斜角度。确定所述头像的分界点,利用所述头像的分界点和所述头像的倾斜角度,获取覆盖所述头像的矩形框。例如:依据头像选取框四边向四周做平行线,使四条平行线分别通过A、B、C、D四个点如图5d,形成头像照片轮廓矩形N,如图5e;设N长为l,宽为d;设证件外轮廓矩形框为Q,设Q长为L,宽为D,如图5f所示的。
具体的,所述确定所述头像的分界点,包括:
获取人脸识别中的头像选取框,在所述头像选取框的四边扫描对比度的处于峰值的区域。在所述对比度的处于峰值的区域中,选取距离所述头像选取框最远的点作为所述头像的分界点。例如:以头像选取框为中心,向上、下、左下、右下四边扫描识别图像高对比度区域(头像轮廓--与证件背景交界处),确定四个方向离头像选取框位置最远的高对比度区域分界点(A、B、C、D)如图5c所示。
在本实施例中,步骤S103:所述根据所述卡片物体的位置和角度在所述拍摄界面中显示取景框,具体可以实现为:
根据所述轮廓模板和覆盖所述头像的矩形框,确定所述卡片物体的轮廓。根据所述拍摄界面中所述卡片物体当前的轮廓,生成取景框。通过所生成的取景框,覆盖所述拍摄界面中所述卡片物体当前的轮廓。例如:如图5h所示的,依据已知头像照片在证件上的位置以及大小比例关系L1/L2=k1,L3/L2=k2,D1/D2=k3,D3/D2=k4。如图5g所示的,以其下边和左边作为坐标轴X轴、Y轴,建立平面坐标系设头像照片矩形框中心点为O1(x1,y1),证件矩形框中心点为O2(x2,y2)。
可以得出O1坐标x1=L2/2,y1=D2/2。证件外轮廓矩形框Q长L=k1×L2,宽D=k3×L2。可以计算出证件矩形框中心点O2坐标为:x2=x1-L1/2-L2/2-L3/2=L2/2-k1×L2/2-L2/2-k2×L2/2=-(k1+k2)×L2/2。
y2=y1-D1/2-D2/2-D3/2=D2/2-k3×L2/2-L2/2-k4×L2/2=-(k3+k4)×D2/2。其中,比例系数k1、k2、k3、k4已知。
进一步的,将矩形框N的长l、宽d,代入公式可以计算出证件外轮廓矩形框Q长L=k1×l,宽D=k3×d,如图5h所示的。中心点O1坐标为:X1=-(k1+k2)×l/2,Y1=-(k3+k4)×d/2。进一步计算出矩形框Q中心点O2(x2,y2)具体数值。依据上述计算确定证件外轮廓矩形框Q的长宽大小以及位置。将证件外轮廓矩形框Q从照片中分离出来,以Q的中心点O为中心,逆时针旋转α如图5i,至水平位置,保存并上传图像如图5j。
可选的,用户设备主体也可以在展示所述拍摄界面后,在所述拍摄界面中的初始位置,以初始角度显示默认取景框。其中,默认取景框可以是现有的表现形式,比如处于拍摄界面的中心且相对于拍摄界面的边缘平行,即现有的拍照取景框的形式。根据所述拍摄界面中所述卡片物体当前的轮廓,刷新所述默认取景框的角度和位置,得到覆盖所述拍摄界面中所述卡片物体当前的轮廓的取景框。
其中,所述刷新所述默认取景框的角度和位置,包括:获取位置差值和角度差值。根据所述位置差值和所述角度差值,播放过渡动画。在刷新所述默认取景框的角度和位置的过程中,播放过渡动画。
其中,所述位置差值为:所述初始位置与覆盖所述拍摄界面中所述卡片物体当前的轮廓的取景框的位置之间的差值,所述角度差值为:所述初始角度与覆盖所述拍摄界面中所述卡片物体当前的轮廓的取景框的角度的差值。过渡动画的起始为默认取景框的角度和位置,过渡动画的终止为:覆盖所述拍摄界面中所述卡片物体当前的轮廓的取景框的位置和角度。
具体举例来说,整个执行流程可以如图6所示的,在有需要进行实名认证(或扫描/上传身份证)的app里开启该功能:
1.进入实名认证页面,点击进入拍照上传证件页面,将证件放置在某一平面,使手机与该平面平行;
2.使证件出现在拍照/上传页面的取景框里,无需对齐,点击对焦、拍照;
3.当手机人脸识别检测到证件图像上的头像时,用矩形框M锁定该头像如:图5a,并识别头像上下朝,计算矩形框M与画面水平位置的夹角α,向如图5b;
4.以该头像选取框为中心,向上、下、左下、右下四边扫描识别图像高对比度区域(头像轮廓--与证件背景交界处),确定四个方向离头像选取框位置最远的高对比度区域分界点(A、B、C、D)如图5c;
5.依据头像选取框四边向四周做平行线,使四条平行线分别通过A、B、C、D四个点如图5d,形成头像照片轮廓矩形N,如图5e;设N长为l,宽为d;设证件外轮廓矩形框为Q,设Q长为L,宽为D,如图5f;
6.依据已知头像照片在证件上的位置以及大小比例关系L1/L2=k1,L3/L2=k2,D1/D2=k3,D3/D2=k4;如图5g,以其下边和左边作为坐标轴X轴、Y轴,建立平面坐标系设头像照片矩形框中心点为O1(x1,y1),证件矩形框中心点为O2(x2,y2);
可以得出O1坐标x1=L2/2,y1=D2/2;
证件外轮廓矩形框Q长L=k1×L2,宽D=k3×L2;
可以计算出证件矩形框中心点O2坐标为:
x2=x1-L1/2-L2/2-L3/2=L2/2-k1×L2/2-L2/2-k2×L2/2=-(k1+k2)×L2/2;
y2=y1-D1/2-D2/2-D3/2=D2/2-k3×L2/2-L2/2-k4×L2/2=-(k3+k4)×D2/2;
注:比例系数k1、k2、k3、k4已知。
7.将矩形框N的长l、宽d,代入公式可以计算出证件外轮廓矩形框Q长L=k1×l,宽D=k3×d;如图5h
中心点O1坐标为:X1=-(k1+k2)×l/2,Y1=-(k3+k4)×d/2;
进一步计算出矩形框Q中心点O2(x2,y2)具体数值;
依据上述计算确定证件外轮廓矩形框Q的长宽大小以及位置;
8.将证件外轮廓矩形框Q从照片中分离出来,以Q的中心点O为中心,逆时针旋转α如图5i,至水平位置,保存并上传图像如图5j。
本实施例中,利用人脸识别锁定人脸区域,以及头像朝向,确定证件照在该平面与平面水平线的夹角α;利用图像识别中对于高对比度的图像轮廓识别,找出头像四周最远边缘轮廓点A、B、C、D四个点,进而锁定头像区域;依据已知头像照片在证件上的位置,以及大小比例关系,可以得出证件外轮廓矩形框Q的大小、位置,进而分离保存上传照片。
用户可以省去对齐矩形框的过程,只需按照正常拍照流程即可完成扫描分离证件图像并上传。相较现有方式扫描大大节约时间,提升扫描成功率,原有扫描方式大约需要15-20秒且会出现无法对齐、对齐过程中手抖模糊等问题,成功率低,现有方式只需2-3秒,扫描成功率也可提升数倍。
在可选的方案变形中,可以有多种实施例。例如:除了扫描证件背面也可以通过识别证件正面国徽图案,进一步通过识别图像(红色)锁定国徽图案矩形轮廓外框以及其倾斜角度,再根据国徽矩形外框轮廓与证件外框轮廓固定的位置/比例关系进一步,计算出当前证件外框轮廓的位置、大小。将证件正面图像从背景中分离出来,旋转到水平位置,保存/上传。
本实施例中还提供一种身份证件扫描装置,该装置可以通过程序代码实现在如图3所示的软件环境中,如图7所示的,该装置包括:
人脸识别模块,用于对拍摄到的卡片物体的图像进行人脸识别,得到头像。
处理模块,用于根据识别到的头像,获取所述卡片物体的位置和角度。
取景框管理模块,用于根据所述卡片物体的位置和角度在拍摄界面中显示取景框,其中,所述取景框的显示位置匹配所述拍摄界面中的卡片物体的位置,所述取景框的角度匹配所述拍摄界面中的卡片物体的角度。
所述处理模块,具体用于根据所述卡片物体的类型,确定所述卡片物体的轮廓模板,其中,所述轮廓模板中包括了所述卡片物体的默认形状,和头像区域在所述卡片物体中预先配置的位置和角度。根据所述头像在所述拍摄界面中的位置和角度,对照所述头像区域在所述卡片物体中预先配置的位置和角度,获取所述卡片物体的位置和角度。
所述处理模块,还用于根据所述头像在所述拍摄界面中的位置和朝向,得到所述头像的倾斜角度。确定所述头像的分界点,利用所述头像的分界点和所述头像的倾斜角度,获取覆盖所述头像的矩形框。
所述处理模块,具体用于获取人脸识别中的头像选取框,在所述头像选取框的四边扫描对比度的处于峰值的区域。
在所述对比度的处于峰值的区域中,选取距离所述头像选取框最远的点作为所述头像的分界点。
所述取景框管理模块,具体用于根据所述轮廓模板和覆盖所述头像的矩形框,确定所述卡片物体的轮廓。根据所述拍摄界面中所述卡片物体当前的轮廓,生成取景框。通过所生成的取景框,覆盖所述拍摄界面中所述卡片物体当前的轮廓。
所述取景框管理模块,还用于展示所述拍摄界面后,在所述拍摄界面中的初始位置,以初始角度显示默认取景框。根据所述拍摄界面中所述卡片物体当前的轮廓,刷新所述默认取景框的角度和位置,得到覆盖所述拍摄界面中所述卡片物体当前的轮廓的取景框。
本实施例中,通过人脸识别锁定卡片物体上头像(比如身份证件上的人像照片),并对头像扫描,找到头像照片的边缘分界点,确定卡片物体图像标识倾斜角度与矩形外框大小,鉴于卡片物体上头像照片的位置、大小、以及与卡片物体比例关系是固定的,因此依据图像标识的位置、大小、比例关系,计算出证件外轮廓,进而将证件从扫描图像中分离出来。
通过生成的取景框主动吻合拍摄到的卡片物体,用户可以省去对齐矩形框的过程,只需按照正常拍照流程即可完成扫描分离身份证等卡片物体的图像并上传。相较现有方式扫描大大节约时间,提升扫描/上传证件成功率。
具体实现中,本申请实施例还提供了一种计算机存储介质,其中,该计算机存储介质可存储有程序,所述程序包括指令,该程序执行时可包括本申请提供的支付方法的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,ROM)或随机存储记忆体(random access memory,RAM)等。
本领域的技术人员可以清楚地了解到本申请实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者无线通信设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书的各个部分均采用递进的方式进行描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点介绍的都是与其他实施例不同之处。另外,除非有相反的说明,本申请实施例提及“第一”以及“第二”等序数词用于对多个对象进行区分,不用于限定多个对象的顺序。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
以上所述的本申请实施方式并不构成对本申请保护范围的限定。