CN115361369A - 数据处理方法、装置、电子设备及计算机可读存储介质 - Google Patents
数据处理方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN115361369A CN115361369A CN202210965478.2A CN202210965478A CN115361369A CN 115361369 A CN115361369 A CN 115361369A CN 202210965478 A CN202210965478 A CN 202210965478A CN 115361369 A CN115361369 A CN 115361369A
- Authority
- CN
- China
- Prior art keywords
- image
- shooting
- shooting parameters
- output image
- parameters
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 16
- 238000000034 method Methods 0.000 claims abstract description 73
- 238000012545 processing Methods 0.000 claims abstract description 57
- 238000012795 verification Methods 0.000 claims abstract description 19
- 238000007906 compression Methods 0.000 claims description 66
- 230000006835 compression Effects 0.000 claims description 58
- 238000007781 pre-processing Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 15
- 230000006978 adaptation Effects 0.000 abstract description 6
- 238000011161 development Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000009432 framing Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Studio Devices (AREA)
Abstract
本申请提供一种数据处理方法、装置、电子设备及计算机可读存储介质。该方法包括:获取web端发送的当前业务的拍摄参数,并对拍摄参数进行校验;其中,拍摄参数是web端根据当前业务的拍摄类型确定的;当校验通过时根据拍摄参数调用移动终端的原生相机进行拍摄,获得至少一张目标图像;根据当前业务的拍摄参数对至少一张目标图像进行处理,获得至少一张输出图像;将至少一张输出图像发送至web端,使web端根据至少一张输出图像进行业务操作。本申请的方法,通过动态配置,对业务场景进行了可扩展性适配,支持多类型图像拍摄,解决现有技术不支持用户在现场上报多类型多业务的图片工单要求,且在附件上传过程中,会出现操作繁琐、效率低的问题。
Description
技术领域
本申请涉及通信技术,尤其涉及一种数据处理方法、装置、电子设备及计算机可读存储介质。
背景技术
随着信息社会的发展,从客户端上传图片和文件等附件到web端是企业项目开发、办理证件和申报信息中必不可少的环节之一,但凡涉及到附件上传的都会对图片和文件等附件有一定的上传需求。
现有方案拍照选图模式是通过调取本地相机方式获得图像,再通过其他图片处理软件进行按相应的要求处理图像,实现业务的拍照上传。
然而,现有技术中方式较为单一,不支持用户在现场同时上报多类型多业务的图片工单要求。从低耦合,高重用的角度来说缺少了可变性和扩展性,在附件上传过程中,会出现操作繁琐、效率低的问题。
发明内容
本申请提供一种数据处理方法、装置、电子设备及计算机可读存储介质,用以解决现有技术中方式较为单一,不支持用户在现场同时上报多类型多业务的图片工单要求,且在附件上传过程中,会出现操作繁琐、效率低的问题。
本申请一实施例提供一种数据处理方法,所述方法应用于移动终端,所述方法包括:
获取web端发送的当前业务的拍摄参数,并对所述拍摄参数进行校验;其中,所述拍摄参数是所述web端根据当前业务的拍摄类型确定的,所述拍摄参数包括拍照对象、最大图像数量、定位框类型、图像尺寸以及图像质量;
当校验通过时根据拍摄参数调用所述移动终端的原生相机进行拍摄,获得至少一张目标图像;
根据所述当前业务的拍摄参数对至少一张目标图像进行处理,获得至少一张输出图像;
将所述至少一张输出图像发送至所述web端,使所述web端根据所述至少一张输出图像进行业务操作。
在一些实施例中,当校验通过时根据拍摄参数调用所述移动终端的原生相机进行拍摄,获得至少一张目标图像,具体包括:
当校验通过时根据所述拍照对象、所述最大图像数量和所述定位框类型生成所述原生相机的相机参数;使所述原生相机根据所述相机参数进行拍摄获得至少一张相机图像;
对所述至少一张相机图像进行预处理获得至少一张目标图像。
在一些实施例中,对所述至少一张相机图像进行预处理获得至少一张目标图像,具体包括:
执行回调指令对所述至少一张相机图像进行回调处理,获得至少一张原始图像;
对至少一张所述原始图像进行尺寸调整,获得至少一张调整后的原始图像;
根据所述移动终端的方向对所述至少一张调整后的原始图像进行旋转,获得至少一张目标图像。
在一些实施例中,根据所述当前业务的拍摄参数对至少一张目标像进行处理,获得至少一张输出图像,具体包括:
当所述移动终端内运行Android系统时,根据所述图像尺寸和所述图像质量确定目标压缩值,根据所述目标压缩值对每张所述目标图像进行多次循环的质量压缩,获得所述至少一个输出图像;
将所述至少一个输出图像转换为数据流格式的图像数据,并将所述数据流格式的图像数据存储在本地。
在一些实施例中,根据所述当前业务的拍摄参数对至少一张目标像进行处理,获得至少一张输出图像,具体包括:
当所述移动终端内运行IOS系统时,根据所述图像尺寸和所述图像质量确定压缩比例和二分法参数;
根据所述压缩比例对每张所述目标图像进行预压缩;
并根据所述二分法参数使用二分法质量压缩和尺寸重绘压缩,对预压缩后目标图像进行压缩处理,获得至少一个所述输出图像。
在一些实施例中,在根据所述当前业务的拍摄参数对至少一张目标像进行处理,获得至少一张输出图像之后,所述方法还包括:
响应于滑动操作,改变各所述输出图像在显示界面上的显示顺序。
在一些实施例中,将所述至少一张输出图像发送至web端,具体包括:
按照各张输出图像的拍摄顺序,从本地读取所述输出图像,并将所述输出图像进行编码;
将所述编码后的输出图像传输至所述web端。
本申请另一实施例提供一种数据处理装置,包括:
获取模块,用于获取web端发送的当前业务的拍摄参数,并对所述拍摄参数进行校验;其中,所述拍摄参数是所述web端根据当前业务的拍摄类型确定的,所述拍摄参数包括拍照对象、最大图像数量、定位框类型、图像尺寸以及图像质量;
处理模块,用于当校验通过时根据拍摄参数调用移动终端的原生相机进行拍摄,获得至少一张目标图像;
处理模块还用于根据所述当前业务的拍摄参数对至少一张目标图像进行处理,获得至少一个输出图像;
处理模块还用于将所述至少一张输出图像发送至所述web端,使所述web端根据所述至少一张输出图像进行业务操作。
本申请另一实施例提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现上述实施例所涉及的数据处理方法。
本申请另一实施例提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现上述实施例所涉及的的数据处理方法。
本申请提供的数据处理方法、装置、电子设备及计算机可读存储介质,通过获取web端发送的当前业务的拍摄参数,并对拍摄参数进行校验;其中,拍摄参数是web端根据当前业务的拍摄类型确定的,拍摄参数包括拍照对象、最大图像数量、定位框类型、图像尺寸以及图像质量,通过动态配置,对业务场景进行了可扩展性适配;当校验通过时根据拍摄参数调用移动终端的原生相机进行拍摄,获得至少一张目标图像,准确实现多类型图像拍摄,再根据当前业务的拍摄参数对至少一张目标图像进行处理,实现可调控压缩图像质量和大小,获得至少一个输出图像,将至少一张输出图像发送至web端,使web端根据至少一张输出图像进行业务操作。解决现有技术中不支持用户在现场同时上报多类型多业务的图片工单要求,且在附件上传过程中,会出现操作繁琐、效率低的问题。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请一实施例提供的一种数据处理方法流程图;
图2为本申请另一实施例提供的一种获得至少一张目标图像方法流程图;
图3为本申请再一实施例提供的一种对至少一张相机图像进行预处理获得至少一张目标图像方法流程图;
图4为本申请又一实施例提供的一种获得至少一个输出图像方法流程图;
图5为本申请另一实施例提供的一种获得至少一个输出图像方法流程图;
图6为本申请再一实施例提供的一种将至少一张输出图像发送至web端方法流程图;
图7为本申请又一实施例提供的数据处理装置的结构示意图;
图8为本申请另一实施例提供的一种电子设备结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
随着信息社会的发展,从客户端上传图片和文件等附件到web端是企业项目开发、办理证件和申报信息中必不可少的环节之一,但凡涉及到附件上传的都会对图片和文件等附件有一定的上传需求。
现有方案拍照选图模式是通过调取本地相机方式获得图像,再通过其他图片处理软件进行按相应的要求处理图像,实现业务的拍照上传。
然而,现有技术中方式较为单一,不支持用户在现场同时上报多类型多业务的图片工单要求。从低耦合,高重用的角度来说缺少了可变性和扩展性,在附件上传过程中,会出现操作繁琐、效率低的问题。
针对上述问题,本申请实施例提供一种数据处理方法、装置、电子设备及计算机可读存储介质,数据处理方法、装置、电子设备及计算机可读存储介质,旨在解决现有技术中方式较为单一,不支持用户在现场同时上报多类型多业务的图片工单要求,且在附件上传过程中,会出现操作繁琐、效率低的问题。本申请的技术构思是:通过获取web端发送的当前业务的拍摄参数,并对拍摄参数进行校验,确保拍摄参数的准确性;其中,拍摄参数是web端根据当前业务的拍摄类型确定的,拍摄参数包括拍照对象、最大图像数量、定位框类型、图像尺寸以及图像质量,通过动态配置,对业务场景进行了可扩展性适配;当校验通过时根据拍摄参数调用移动终端的原生相机进行拍摄,获得至少一张目标图像,准确实现多类型图像拍摄,再根据当前业务的拍摄参数对至少一张目标图像进行处理,实现可调控压缩图像质量和大小,获得至少一个输出图像,将至少一张输出图像发送至web端,使web端根据至少一张输出图像进行业务操作。解决现有技术中不支持用户在现场同时上报多类型多业务的图片工单要求,且在附件上传过程中,会出现操作繁琐、效率低的问题。
如图1所示,本申请一实施例提供一种数据处理方法,方法包括如下步骤:
S101、获取web端发送的当前业务的拍摄参数,并对拍摄参数进行校验;其中,拍摄参数是web端根据当前业务的拍摄类型确定的,拍摄参数包括拍照对象、最大图像数量、定位框类型、图像尺寸以及图像质量。
在该步骤中,为了能够实现相关业务的大量数据的存储,在办理业务时,会把当前业务相应的数据存储到web端,web端为了更好的管理和存储数据,会有相应的业务拍摄参数,其中,拍摄参数包括拍照对象即业务所需要拍摄的信息数据、最大图像数量即当前业务需要拍摄多张图像时的数量、定位框类型即便于准备框选定位被拍摄的对象,比如,当拍摄身份证时,身份证正反面有相应的身份证头像或者身份证国徽的框,定位框类型便于拍摄对象中某一具体对象的位置更准确,防止拍的太小或者太大而影响上传到web端,出现web端无法处理和识别的情况,定位框类型还可以是,利用定位框在多种待识别对象中选择目标识别对象,比如,在人和宠物的对象中,通过定位框就可以选中人为目标识别对象,图像尺寸和图像质量是考虑到前端的内存大小,业务会对所上传的图像尺寸和图像质量有一定的限制,比如,当报名某个考试,在上传本人照片时图像质量会有小于30k的要求;当前业务的拍摄参数可以是以上其中的任意一种,也可以是多种组合,以满足多类型多业务的拍摄要求。
为了确保上传资料的准确性,对拍摄参数进行校验。可以用默认的字段类型和选项校验,当校验错误时,使用本地存储的默认配置参数。
示例性的,还可以通过字段中的validators选项进行校验,当校验错误时,使用本地存储的默认配置参数。
示例性的,还可以用validate_<field_name>,对<field_name>字段进行校验,当校验错误时,使用本地存储的默认配置参数。
示例性的,还可以通过validate方法,对多个字段进行比较校验,当校验错误时,使用本地存储的默认配置参数。
S102、当校验通过时根据拍摄参数调用移动终端的原生相机进行拍摄,获得至少一张目标图像。
在该步骤中,当校验通过时,首先将移动终端的原生相机的拍照界面分为操作界面和预览图层。使用MVC(Model View Controller)软件设计模式,操作界面实现View层和Model层分离,View层为当前业务所拍摄对象的全景图,Model层为数据处理层。把Controller的数据和逻辑处理部分从中抽离,用一个专门的对象去管理。实现拍照和图像处理分开,可以同时进行,提高处理效率。将图像数据分为三个层级:单个照片Model、拍照种类Model和数据管理Manager类。其中,数据管理Manager类包括:图像旋转、图像压缩和图像保存,图像旋转是为了让所拍摄的图片和手机屏幕方向相适应,图像压缩是为了满足业务的特定参数需求,图像保存是为了便于上传到web端。预览层为预览上传到web端的图像,通过自定义View,将AVCaptureVideoPreviewLayer内嵌到自定义的View上,实现预览层和界面View抽离,同时在自定义View上增加点击事件,实现聚焦等操作。
web端通过JSBridge传入一个方法名到移动终端,方法名是封装当前业务的拍照参数到移动终端插件的名称,移动终端可以是android端,也可以是iOS系统端,利用移动终端的原生相机进行拍摄,获得至少一张目标图像。
S103、根据当前业务的拍摄参数对至少一张目标图像进行处理,获得至少一张输出图像。
在该步骤中,当前业务的拍摄参数的获取已在步骤S101中详细介绍,此处不再赘述。比如,当我们报名某个考试,需要上传相关的个人头像、学历证书和简历时,当前业务的拍摄参数会限制相关单个资料的上传需小于30KB,或者20KB等。移动终端会根据当前业务的拍摄参数,对相关所需上传的资料进行压缩处理,获得至少一张输出图像,以满足业务参数需求。
示例性的,当我们提交相关申报项目材料是,会对所上传的资料顺序有一定的要求,移动终端会根据当前业务的拍摄需求,对相关所需上传的资料进行排序处理,获得至少一张输出图像,以满足业务参数需求。
在一实施例中,在根据当前业务的拍摄参数对至少一张目标像进行处理,获得至少一张输出图像之后,方法还包括:
S601、响应于滑动操作,改变各输出图像在显示界面上的显示顺序。
在该步骤中,当前业务的拍摄需求是在上传相关图像时还要有一定的顺序,为了响应于滑动操作,当移动终端是iOS端时,iOS端创建一个继承于UICollectionViewFlowLayout的layout文件,通过重写系统方法来获取每个cell的大小,重新设置cell的frame来实现cell紧凑左侧排列,其cell默认是多项居中靠边排列,实现canMoveItemAtIndexPath方法来实现cell可以移动。通过重写UICollectionViewFlowLayout来达到照片自由拖拉排序的操作,减少用户的繁琐操作过程,大大提高用户的体验和上传效率。
当移动终端是Android端时,Android端通过自定义EditMultiPhotoRecycleView,重写CustomDragAdapter,通过ItemTouchHelper配合处理完成item移动拖拽排序效果减少用户的繁琐操作过程,大大提高用户的体验和上传效率。
S104、将至少一张输出图像发送至web端,使web端根据至少一张输出图像进行业务操作。
在该步骤中,当移动终端是iOS端时,使用AVCaptureSession将AVCaptureDeviceInput和AVCaptureMetadataOutput串联起来,通过JSBridge,web端回调获取至少一张输出图像。web端根据至少一张输出图像进行后续的业务操作。比如,在报名时,第一步实现上传照片,才可以进行后续的选岗位和填个人信息等业务。
当移动终端是Android端时,通过http传输协议将至少一张输出图像发送至web端,使web端根据至少一张输出图像进行相应后续的业务操作。比如,在报名时,第一步实现上传照片,才可以进行后续的选岗位和填个人信息等业务。
在上述技术方案中,通过获取web端发送的当前业务的拍摄参数,并对拍摄参数进行校验,确保拍摄参数的准确性;其中,拍摄参数是web端根据当前业务的拍摄类型确定的,拍摄参数包括拍照对象、最大图像数量、定位框类型、图像尺寸以及图像质量,通过动态配置,对业务场景进行了可扩展性适配;当校验通过时根据拍摄参数调用移动终端的原生相机进行拍摄,获得至少一张目标图像,准确实现多类型图像拍摄,再根据当前业务的拍摄参数对至少一张目标图像进行处理,实现可调控压缩图像质量和大小,获得至少一个输出图像,将至少一张输出图像发送至web端,使web端根据至少一张输出图像进行业务操作。解决现有技术中不支持用户在现场同时上报多类型多业务的图片工单要求,且在附件上传过程中,会出现操作繁琐、效率低的问题。
如图2所示,本申请另一实施例提供的一种获得至少一张目标图像方法,方法包括如下步骤:
S201、当校验通过时根据拍照对象、最大图像数量和定位框类型生成原生相机的相机参数;使原生相机根据相机参数进行拍摄获得至少一张相机图像。
在该步骤中,当校验通过时根据拍照对象、最大图像数量和定位框类型生成原生相机的相机参数,web端通过JSBridge传入一个方法名到移动终端,方法名是封装当前业务的拍照参数到移动终端插件的名称,移动终端可以是android端,也可以是iOS系统端,原生相机根据相机参数进行拍摄获得至少一张相机图像。
示例性的,当移动终端是android端时,使用原生SurfaceView绘制相机界面。SurfaceView形成是通过SurfaceFlinger服务中的layer,通过其独立测量,绘制SurfaceView所占据的空间。窗口在绘制的过程中,每一个子视图的成员函数draw或者dispatchDraw都会被调用到,通过draw和dispatchDraw对view进行测绘。经过测绘后,SurfaceView通过调用getHolder方法,获得当前SurfaceView中的Surface对应的SurfaceHolder,SurfaceHolder通过Surface获得Canvas对象,并锁定。所得到的Canvas对象在修改Surface中的数据完成后,释放同步锁,并提交改变Surface的状态及图像,获得至少一张目标图像数据。
示例性的,当移动终端是iOS系统端时,使用Masonry搭建拍照操作界面,Masonry采用链式语法封装自动布局,且同时支持iOS和Max OS X,可以更方便的进行原生屏幕适配。再使用AVFoundation搭建拍照功能,AVFoundation是媒体捕获架构,AVCaptureSession利用其中的AVCaptureVideoPreviewLayer来自定义手机摄像头获取的视图范围。移动终端获取web端发送的当前业务的拍摄需求,以此来调用移动终端的原生相机进行拍摄,获得至少一张目标图像。
比如,当我们报名需要上传身份证到web端时,拍照对象是身份证、最大图像数量为两张,即正反面、定位框类型为正面的人头像和反面的国徽。
S202、对至少一张相机图像进行预处理获得至少一张目标图像。
在该步骤中,在获得至少一张相机图像之后,对至少一张相机图像在移动终端进行预处理获得至少一张目标图像。
示例性的,当移动终端是android端时,系统回调生成CMSampleBufferRef,利用buffer生成NSData,再使用NSData中imageWithData生成原始UIImage对象,为了能够适应屏幕的显示,按照屏幕显示的拍摄区域对原始图片进行剪裁,最后根据手机方向,对照片进行旋转,保持照片和手机方向的一致性,从而获得至少一张目标图像。
示例性的,当移动终端是IOS端时,系统回调生成原始图像byte数组,根据byte数据创建处理图像事务task并加入任务池中,任务池中开始执行图像处理事务,再创建Bitmap对象,等比缩小图像尺寸至适应屏幕显示的尺寸,最后根据手机方向,对照片进行旋转,保持照片和手机方向的一致性,从而获得至少一张目标图像。
在上述技术方案中,当校验通过时根据拍照对象、最大图像数量和定位框类型生成原生相机的相机参数;使原生相机根据相机参数进行拍摄获得至少一张相机图像;对至少一张相机图像进行预处理获得至少一张目标图像,实现了图像尺寸和屏幕的适应性,且目标图像能够与手机方向进行自适应性调整。
如图3所示,本申请再一实施例提供的一种对至少一张相机图像进行预处理获得至少一张目标图像方法,方法包括如下步骤:
S301、执行回调指令对至少一张相机图像进行回调处理,获得至少一张原始图像。
在该步骤中,当移动终端是iOS端时,原生相机的系统回调生成CMSampleBufferRef,即生成原始数据,通过系统方法,将bufferRef转化为可处理的NSData类型的数据,再使用imageWithData生成能在移动终端预览层显示的原始UIImage对象,即获得至少一张原始图像。
当移动终端是Android端时,原生相机的系统方法回调生成原始图像byte数组,再根据byte数据创建处理图像事务task并加入任务库中,任务库开始根据自己定义图像事务方法执行图像处理任务,即获得至少一张原始图像。
S302、对至少一张原始图像进行尺寸调整,获得至少一张调整后的原始图像。
在该步骤中,当移动终端是iOS端时,对至少一张原始图像按照屏幕显示的拍摄区域进行剪裁,先创建一个画布对象,再设置业务需要剪裁的尺寸,将图片转化为CGImageRef对象,并绘制到画布上,然后生成一个对应尺寸的UIImage对象,获得至少一张调整后的原始图像。
当移动终端是Android端时,通过Bitmap.createScaledBitmap方式创建Bitmap,createScaledBitmap可以等比例缩小图像尺寸至调整后的原始图像。
S303、根据移动终端的方向对至少一张调整后的原始图像进行旋转,获得至少一张目标图像。
在该步骤中,当移动终端是iOS端时,首先通过系统API(ApplicationProgramming Interface,应用程序编程接口)获取移动终端的角度,根据移动终端角度得到该图片应该旋转多少度,然后创建一个画布对象,将图片转化为CGImageRef对象,绘制到画布上,然后生成一个旋转后的UIImage对象,即获得至少一张目标图像。
当移动终端是Android端时,获取移动终端的角度,通过matrix输入旋转角度,配置完成,通过图像静态方法createBitmap,根据角度参数对象matrix,重新生成图像,获得至少一张目标图像。
在上述技术方案中,执行回调指令对至少一张相机图像进行回调处理,获得至少一张原始图像;再对至少一张原始图像通过设置需要剪裁的尺寸,将图片转化为CGImageRef对象,绘制到画布上,然后获得至少一张调整后的原始图像;根据移动终端的角度方向对至少一张调整后的原始图像进行旋转,获得至少一张目标图像。实现移动终端与目标图像的相对方向是一致的,起到对拍摄对象矫正的作用,提高上传到web端的效率。
如图4所示,本申请又一实施例提供的一种获得至少一个输出图像方法,方法包括如下步骤:
S401、当移动终端内运行Android系统时,根据图像尺寸和图像质量确定目标压缩值,根据目标压缩值对每张目标图像进行多次循环的质量压缩,获得至少一个输出图像。
在该步骤中,当移动终端内运行Android系统时,首先根据业务参数的图像尺寸和图像质量预设目标压缩值,通过while循环方式实现,需说明的是,可以根据需求设定,判断当前每张目标图像的质量压缩大小是否小于预设的目标压缩值,当压缩图片大小小于预设的目标压缩值时,停止质量压缩,获得至少一个输出图像。
S402、将至少一个输出图像转换为数据流格式的图像数据,并将数据流格式的图像数据存储在本地。
在该步骤中,将至少一个输出图像,通过bitmap.compress方式将业务需求的图像格式、大小和输出流对象传入nativeCompress中,系统通过nativeCompress转换为数据流格式的图像数据,并通过数据流格式写入本地保存。
在上述技术方案中,当移动终端内运行Android系统时,通过while循环方式执行,判断是否压缩图片大小小于预设的目标压缩值,获得至少一个输出图像,再将至少一个输出图像转换为数据流格式的图像数据,并将数据流格式的图像数据存储在本地。实现图像数据的自动压缩处理,减少用户压缩操作步骤,提高附件上传效率。
如图5所示,本申请另一实施例提供的一种获得至少一个输出图像方法,方法包括如下步骤:
S501、当移动终端内运行iOS系统时,根据图像尺寸和图像质量确定预压缩比例和再次压缩参数。
在该步骤中,当移动终端内运行iOS系统时,根据图像尺寸和图像质量确定预压缩比例和再次压缩参数,其中,预压缩比例为0.1,需要说明的是,压缩比例可以根据自己的需求所设定,用于缩略图显示;再次压缩参数为6,递归6次之后基本压缩达到极限,需要说明的是,再次压缩参数可以根据自己的需求所设定。
S502、根据预设压缩比例对每张目标图像进行预压缩。
在该步骤中,当移动终端内运行iOS系统时,使用系统方法UIImageJPEGRepresentation,根据预设压缩比例对剪裁和旋转后的图片进行预压缩,其中,预压缩比例为0.1,需要说明的是,压缩比例可以根据自己的需求所设定,用于缩略图显示。
S503、根据再次压缩参数使用二分法质量压缩和尺寸重绘压缩,对预压缩后目标图像进行压缩处理,获得至少一个输出图像。
在该步骤中,先利用二分法质量压缩,取0和1为边界,依次取边界值相加的一半为压缩比系数,使用UIImageJPEGRepresentation方法进行压缩,将二分法质量压缩后的图片数据大小跟业务需求的压缩大小进行对比,如果小于就返回图像,大于则继续递归调用该方法,每次递归最大边界取上一次最大边界的0.9倍。递归6次之后基本压缩达到极限,需要说明的是,递归次数可以根据自己的需求所设定。再创建一个画布对象,设置需要压缩的大小,将二分法质量压缩后的图像转化为CGImageRef对象,绘制到画布上,然后生成一个对应尺寸的UIImage对象,即获得至少一个输出图像。
在上述技术方案中,当移动终端内运行iOS系统时,根据预设压缩比例和再次压缩参数使用系统方法UIImageJPEGRepresentation对每张目标图像进行预压缩,再使用二分法质量压缩和尺寸重绘压缩,对预压缩后目标图像进行压缩处理,获得至少一个输出图像。实现图像数据的自动压缩处理,减少用户压缩操作步骤,提高附件上传效率。
如图6所示,本申请再又一实施例提供的一种将至少一张输出图像发送至web端方法,方法包括如下步骤:
S601、按照各张输出图像的拍摄顺序,从本地读取输出图像,并将输出图像进行编码。
在该步骤中,按照各张输出图像的拍摄顺序,通过for循环进行顺序遍历,根据图片本地路径读取照片并通过base64EncodedStringWithOptions方法,将NSData类型数据转化为Base64数据,能够为后续的图像显示进行解析。
S602、将编码后的输出图像传输至web端。
在该步骤中,拼接组合json返回报文,通过JSBridge,调用web端定义的方法,将报文返回给web端,web端解析json报文,将json字符串,转化为字典获得图像数据并展示。
在上述技术方案中,通过循环按照各张输出图像的拍摄顺序,从根据图片本地路径读取输出图像,并将输出图像进行编码;再通过JSBridge将编码后的输出图像转化为字典,传输至web端。解决在附件上传过程中,会出现操作繁琐、效率低的问题。
如图7所示,本申请又一实施例提供的数据处理装置,装置包括;
获取模块701,用于获取web端发送的当前业务的拍摄参数,并对拍摄参数进行校验;其中,拍摄参数是web端根据当前业务的拍摄类型确定的,拍摄参数包括拍照对象、最大图像数量、定位框类型、图像尺寸以及图像质量;
处理模块702,用于当校验通过时根据拍摄参数调用移动终端的原生相机进行拍摄,获得至少一张目标图像;
处理模块702还用于根据当前业务的拍摄参数对至少一张目标图像进行处理,获得至少一张输出图像;
处理模块702还用于将至少一张输出图像发送至web端,使web端根据至少一张输出图像进行业务操作。
在一实施例中,处理模块702具体用于:
当校验通过时根据拍照对象、最大图像数量、定位框类型、图像尺寸以及图像质量生成原生相机的相机参数;使原生相机根据相机参数进行拍摄获得至少一张相机图像;
对至少一张相机图像进行预处理获得至少一张目标图像。
在一实施例中,处理模块702具体用于:
调用移动终端的原生相机进行拍摄,获得至少一张目标图像,具体包括:
执行回调指令对至少一张相机图像进行回调处理,获得至少一张原始图像;
对至少一张原始图像进行尺寸调整,获得至少一张调整后的原始图像;
根据移动终端的方向对至少一张调整后的原始图像进行旋转,获得至少一张目标图像。
在一实施例中,处理模块702具体用于:
根据当前业务的拍摄需求对至少一张目标像进行处理,获得至少一个输出图像,具体包括:
当移动终端内运行Android系统时,根据图像尺寸和图像质量确定目标压缩值,根据目标压缩值对每张目标图像进行多次循环的质量压缩,获得至少一个输出图像;
将至少一个输出图像转换为数据流格式的图像数据,并将数据流格式的图像数据存储在本地。
在一实施例中,处理模块702具体用于:
根据当前业务的拍摄需求对至少一张目标像进行处理,获得至少一个输出图像,具体包括:
当移动终端内运行IOS系统时,根据图像尺寸和图像质量确定预压缩比例和再次压缩参数;
根据压缩比例对每张目标图像进行预压缩;
并根据再次压缩参数使用二分法质量压缩和尺寸重绘压缩,对预压缩后目标图像进行压缩处理,获得至少一个输出图像。
在一实施例中,处理模块702具体用于:
在根据当前业务的拍摄需求对至少一张目标像进行处理,获得至少一个输出图像之后,方法还包括:
响应于滑动操作,改变各输出图像在显示界面上的显示顺序。
在一实施例中,处理模块702具体用于:
将至少一张输出图像发送至web端,具体包括:
按照各张输出图像的拍摄顺序,从本地读取输出图像,并将输出图像进行编码;
将编码后的输出图像传输至web端。
如图8所示,本申请另一实施例提供一种电子设备800,电子设备800包括存储器801和处理器802。
其中,存储器801用于存储处理器可执行的计算机指令;
处理器802在执行计算机指令时实现上述实施例中方法中的各个步骤。具体可以参见前述方法实施例中的相关描述。
可选地,上述存储器801既可以是独立的,也可以跟处理器802集成在一起。当存储器801独立设置时,该电子设备还包括总线,用于连接存储器801和处理器802。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机指令,当处理器执行计算机指令时,实现上述实施例中方法中的各个步骤。
本申请实施例还提供一种计算机程序产品,包括计算机指令,该计算机指令被处理器执行时实现上述实施例中方法中的各个步骤。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。
Claims (10)
1.一种数据处理方法,其特征在于,所述方法应用于移动终端,所述方法包括:
获取web端发送的当前业务的拍摄参数,并对所述拍摄参数进行校验;其中,所述拍摄参数是所述web端根据当前业务的拍摄类型确定的,所述拍摄参数包括拍照对象、最大图像数量、定位框类型、图像尺寸以及图像质量;
当校验通过时根据拍摄参数调用所述移动终端的原生相机进行拍摄,获得至少一张目标图像;
根据所述当前业务的拍摄参数对至少一张目标图像进行处理,获得至少一张输出图像;
将所述至少一张输出图像发送至所述web端,使所述web端根据所述至少一张输出图像进行业务操作。
2.根据权利要求1所述的方法,其特征在于,当校验通过时根据拍摄参数调用所述移动终端的原生相机进行拍摄,获得至少一张目标图像,具体包括:
当校验通过时根据所述拍照对象、所述最大图像数量和所述定位框类型生成所述原生相机的相机参数;使所述原生相机根据所述相机参数进行拍摄获得至少一张相机图像;
对所述至少一张相机图像进行预处理获得至少一张目标图像。
3.根据权利要求2所述的方法,其特征在于,对所述至少一张相机图像进行预处理获得至少一张目标图像,具体包括:
执行回调指令对所述至少一张相机图像进行回调处理,获得至少一张原始图像;
对至少一张所述原始图像进行尺寸调整,获得至少一张调整后的原始图像;
根据所述移动终端的方向对所述至少一张调整后的原始图像进行旋转,获得至少一张目标图像。
4.根据权利要求1至3中任一项所述的方法,其特征在于,根据所述当前业务的拍摄参数对至少一张目标像进行处理,获得至少一张输出图像,具体包括:
当所述移动终端内运行Android系统时,根据所述图像尺寸和所述图像质量确定目标压缩值,根据所述目标压缩值对每张所述目标图像进行多次循环的质量压缩,获得所述至少一个输出图像;
将所述至少一个输出图像转换为数据流格式的图像数据,并将所述数据流格式的图像数据存储在本地。
5.根据权利要求1至3中任意一项所述的方法,其特征在于,根据所述当前业务的拍摄参数对至少一张目标像进行处理,获得至少一张输出图像,具体包括:
当所述移动终端内运行IOS系统时,根据所述图像尺寸和所述图像质量确定预压缩比例和再次压缩参数;
根据所述压缩比例对每张所述目标图像进行预压缩;
并根据所述再次压缩参数使用二分法质量压缩和尺寸重绘压缩,对预压缩后目标图像进行压缩处理,获得至少一个所述输出图像。
6.根据权利要求1至3中任意一项所述的方法,其特征在于,在根据所述当前业务的拍摄参数对至少一张目标像进行处理,获得至少一张输出图像之后,所述方法还包括:
响应于滑动操作,改变各所述输出图像在显示界面上的显示顺序。
7.根据权利要求1至3中任意一项所述的方法,其特征在于,将所述至少一张输出图像发送至web端,具体包括:
按照各张输出图像的拍摄顺序,从本地读取所述输出图像,并将所述输出图像进行编码;
将所述编码后的输出图像传输至所述web端。
8.一种数据处理装置,其特征在于,包括:
获取模块,用于获取web端发送的当前业务的拍摄参数,并对所述拍摄参数进行校验;其中,所述拍摄参数是所述web端根据当前业务的拍摄类型确定的,所述拍摄参数包括拍照对象、最大图像数量、定位框类型、图像尺寸以及图像质量;
处理模块,用于当校验通过时根据拍摄参数调用移动终端的原生相机进行拍摄,获得至少一张目标图像;
处理模块还用于根据所述当前业务的拍摄参数对至少一张目标图像进行处理,获得至少一张输出图像;
处理模块还用于将所述至少一张输出图像发送至所述web端,使所述web端根据所述至少一张输出图像进行业务操作。
9.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1至7中任一项所述的数据处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至7中任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210965478.2A CN115361369B (zh) | 2022-08-12 | 2022-08-12 | 数据处理方法、装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210965478.2A CN115361369B (zh) | 2022-08-12 | 2022-08-12 | 数据处理方法、装置、电子设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115361369A true CN115361369A (zh) | 2022-11-18 |
CN115361369B CN115361369B (zh) | 2024-05-31 |
Family
ID=84033834
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210965478.2A Active CN115361369B (zh) | 2022-08-12 | 2022-08-12 | 数据处理方法、装置、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115361369B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017096857A1 (zh) * | 2015-12-08 | 2017-06-15 | 乐视控股(北京)有限公司 | 相机拍摄参数调整方法及装置 |
CN109769121A (zh) * | 2018-12-12 | 2019-05-17 | 四川商通实业有限公司 | 一种iOS低失真网络图片压缩方法及系统 |
CN110933312A (zh) * | 2019-12-09 | 2020-03-27 | Oppo广东移动通信有限公司 | 拍照控制方法及相关产品 |
CN111836052A (zh) * | 2020-07-06 | 2020-10-27 | Oppo广东移动通信有限公司 | 图像压缩方法、装置、电子设备及存储介质 |
CN112351204A (zh) * | 2020-10-27 | 2021-02-09 | 歌尔智能科技有限公司 | 一种拍照方法、装置、移动终端及计算机可读存储介质 |
CN113656044A (zh) * | 2021-08-24 | 2021-11-16 | 平安科技(深圳)有限公司 | 安卓安装包压缩方法、装置、计算机设备及存储介质 |
WO2022016442A1 (zh) * | 2020-07-23 | 2022-01-27 | 深圳传音控股股份有限公司 | 一种拍照方法、相关设备及计算机可读存储介质 |
-
2022
- 2022-08-12 CN CN202210965478.2A patent/CN115361369B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017096857A1 (zh) * | 2015-12-08 | 2017-06-15 | 乐视控股(北京)有限公司 | 相机拍摄参数调整方法及装置 |
CN109769121A (zh) * | 2018-12-12 | 2019-05-17 | 四川商通实业有限公司 | 一种iOS低失真网络图片压缩方法及系统 |
CN110933312A (zh) * | 2019-12-09 | 2020-03-27 | Oppo广东移动通信有限公司 | 拍照控制方法及相关产品 |
CN111836052A (zh) * | 2020-07-06 | 2020-10-27 | Oppo广东移动通信有限公司 | 图像压缩方法、装置、电子设备及存储介质 |
WO2022016442A1 (zh) * | 2020-07-23 | 2022-01-27 | 深圳传音控股股份有限公司 | 一种拍照方法、相关设备及计算机可读存储介质 |
CN112351204A (zh) * | 2020-10-27 | 2021-02-09 | 歌尔智能科技有限公司 | 一种拍照方法、装置、移动终端及计算机可读存储介质 |
CN113656044A (zh) * | 2021-08-24 | 2021-11-16 | 平安科技(深圳)有限公司 | 安卓安装包压缩方法、装置、计算机设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
CSDN: "安卓图片压缩技术(质量压缩和比例压缩)" * |
孙庆英;翟海峰;: "基于Android平台的智能证件照系统的设计与实现", 淮阴师范学院学报(自然科学版), no. 03, 15 September 2017 (2017-09-15) * |
Also Published As
Publication number | Publication date |
---|---|
CN115361369B (zh) | 2024-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7697040B2 (en) | Method for digital photo management and distribution | |
CN111273907A (zh) | 一种页面处理方法及相关设备 | |
CN103338235B (zh) | 在手机上实现动态壁纸交互式、个性化创作的方法 | |
CN110958399B (zh) | 高动态范围图像hdr实现方法及相关产品 | |
WO2016161890A1 (zh) | 一种数据上传的方法及其装置 | |
WO2019200807A1 (zh) | 图像合成装置、方法及计算机可读存储介质 | |
WO2018188541A1 (zh) | 任务处理方法、装置、计算机设备及存储介质 | |
JP5024028B2 (ja) | 画像変換装置、画像提供システム、撮影編集装置、画像変換方法、画像変換プログラム、および該プログラムを記録した記録媒体 | |
CN107274335B (zh) | 一种快速建立高精数字模型的方法及装置 | |
CN115361369A (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
WO2019227620A1 (zh) | 图片压缩展示的方法、装置、计算机设备及存储介质 | |
CN109151300A (zh) | 摄像系统 | |
CN108513034A (zh) | 远程拍摄图片的方法、电子装置及计算机可读存储介质 | |
JP2018125658A (ja) | カメラ機能を有する携帯可能な情報処理装置、その表示制御方法、及びプログラム | |
US7576790B2 (en) | Terminal control apparatus, terminal control method, terminal control program and storage medium | |
CN115482468A (zh) | 多场景分类方法及装置、设备、存储介质 | |
CN110990109B (zh) | 一种拼接屏回显方法、终端、系统及存储介质 | |
CN112215966A (zh) | 一种虚拟图像与现实的用户照片合影方法 | |
JP5218687B2 (ja) | 画像変換装置、画像提供システム、撮影編集装置、画像変換方法、画像変換プログラム、および該プログラムを記録した記録媒体 | |
JP2004194203A (ja) | 撮影システム、情報処理装置及びその処理方法、並びにプログラム | |
US20240257232A1 (en) | Delegated document scan and storage | |
EP4344190A1 (en) | Video generation method, apparatus and system, device, and storage medium | |
CN109656537B (zh) | 一种支持多种应用容器的Web应用框架及使用方法 | |
CN110221873B (zh) | 基于编程语言提升全屏动画加载性能的方法以及电子设备 | |
CN107733947A (zh) | 图像获取方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |