CN113111361B - 数据处理方法、装置及电子设备 - Google Patents
数据处理方法、装置及电子设备 Download PDFInfo
- Publication number
- CN113111361B CN113111361B CN202110352250.1A CN202110352250A CN113111361B CN 113111361 B CN113111361 B CN 113111361B CN 202110352250 A CN202110352250 A CN 202110352250A CN 113111361 B CN113111361 B CN 113111361B
- Authority
- CN
- China
- Prior art keywords
- target
- module
- editing
- interface
- modules
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
本申请提供一种数据处理方法、装置及电子设备,该方法包括:接收针对目标视觉方案中的目标模块的加密指令;响应所述加密指令对所述目标模块进行加密,并保存加密信息;当接收到针对所述目标模块的编辑指令时,输出加密验证提示信息;基于所述加密信息对响应所述加密验证提示信息输入的待验证加密信息进行验证,若验证通过,则允许针对所述目标模块的编辑操作;否则,拒绝针对所述目标模块的编辑操作。该方法可以提高视觉方案数据的安全性。
Description
技术领域
本申请涉及机器视觉领域,尤其涉及一种数据处理方法、装置及电子设备。
背景技术
机器视觉系统是指通过机器视觉产品将被摄取目标转换成图像信号,传送给专用的图像处理系统,得到被摄目标的形态信息,根据像素分布和亮度、颜色等信息,转换成数字化信号,图像处理系统对这些信号进行各种运算来抽取目标的特征,进而根据判别的结果来控制现场的设备动作。
针对同一问题(或称为任务),不同的机器视觉系统集成商配置的视觉方案通常并不相同,而目前并不存在对视觉方案进行隐私保护的实现方案。
发明内容
有鉴于此,本申请提供一种数据处理方法、装置及电子设备。
根据本申请实施例的第一方面,提供一种数据处理方法,应用于视觉平台,所述方法包括:
接收针对目标视觉方案中的目标模块的加密指令;所述目标视觉方案包括用以实现特定视觉功能的N1个算法模块、所述N1个算法模块的逻辑连接关系以及所述N1个算法模块的参数,所述目标模块包括所述N1个算法模块中的部分算法模块;N1≥2;
响应所述加密指令对所述目标模块进行加密,并保存加密信息;
当接收到针对所述目标模块的编辑指令时,输出加密验证提示信息;所述编辑指令包括用于查看所述目标模块的指令或用于修改所述目标模块的配置信息的指令;
基于所述加密信息对响应所述加密验证提示信息输入的待验证加密信息进行验证,若验证通过,则允许针对所述目标模块的编辑操作;否则,拒绝针对所述目标模块的编辑操作。
根据本申请实施例的第二方面,提供一种数据处理装置,应用于视觉平台,所述装置包括:
接收单元,用于接收针对目标视觉方案中的目标模块的加密指令;所述目标视觉方案包括用以实现特定视觉功能的N1个算法模块、所述N1个算法模块的逻辑连接关系以及所述N1个算法模块的参数,所述目标模块包括所述N1个算法模块中的部分算法模块;N1≥2;
加密单元,用于响应所述加密指令对所述目标模块进行加密,并保存加密信息;
验证单元,用于当所述接收单元接收到针对所述目标模块的编辑指令时,输出加密验证提示信息;所述编辑指令包括用于查看所述目标模块的指令或用于修改所述目标模块的配置信息的指令;
所述验证单元,还用于基于所述加密信息对响应所述加密验证提示信息输入的待验证加密信息进行验证;
处理单元,用于若所述验证单元验证通过,则允许针对所述目标模块的编辑操作;否则,拒绝针对所述目标模块的编辑操作。
根据本申请实施例的第三方面,提供一种电子设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器用于执行机器可执行指令,以实现第一方面的数据处理方法。
根据本申请实施例的第四方面,提供一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现第一方面的数据处理方法。
根据本申请实施例的第五方面,提供一种计算机程序,该计算机程序存储于机器可读存储介质,并且当处理器执行该计算机程序时,促使处理器执行第一方面的数据处理方法。
本申请实施例的数据处理方法,通过接收针对目标视觉方案中的目标模块的加密指令,并响应该加密指令对目标模块进行加密,并保存加密信息,进而,当接收到针对目标模块的编辑指令时,输出加密验证提示信息,并基于加密信息对响应加密验证提示信息输入的待验证加密信息进行验证,若验证通过,则允许针对目标模块的编辑操作;否则,拒绝针对目标模块的编辑操作,提高了视觉方案数据的安全性,实现了对视觉方案的隐私保护。
附图说明
图1是本申请一示例性实施例提供的一种数据处理方法的流程示意图;
图2是本申请一示例性实施例提供的一种视觉方案的示意图;
图3是本申请又一示例性实施例提供的另一种视觉方案的示意图;
图4A是本申请一示例性实施例提供的一种视觉方案的运行界面示意图;
图4B是本申请一示例性实施例提供的一种显示窗口中叠加显示多个运行界面的示意图;
图5是本申请一示例性实施例提供的一种数据处理装置的结构示意图;
图6是本申请实施例提供的一种电子设备的硬件结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
为了使本领域技术人员更好地理解本申请实施例提供的技术方案,并使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中技术方案作进一步详细的说明。
请参见图1,为本申请实施例提供的一种数据处理方法的流程示意图,如图1所示,该数据处理方法可以包括以下步骤:
需要说明的是,本申请实施例中各步骤的序号大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
步骤S100、接收针对目标视觉方案中的目标模块的加密指令。
示例性的,目标视觉方案可以包括用以实现特定视觉功能的N1个算法模块、该N1个算法模块的逻辑连接关系以及该N1个算法模块的参数,其中,N1≥2。
示例性的,目标模块可以包括该N1个算法模块中的部分算法模块。
步骤S110、响应加密指令对目标模块进行加密,并保存加密信息。
本申请实施例中,目标视觉方案并不特指某一固定的视觉方案,而是可以指代任一采用本申请实施例提供的方案进行保护的视觉方案。
目标模块也并不特指某一固定的算法模块,而是可以指代目标视觉方案中任意需要进行保护的一个或多个算法模块。
本申请实施例中,考虑到目前的视觉方案设计实现中,对于使用通用视觉平台设计的视觉方案,其使用的算法模块、算法模块的配置参数以及各算法模块之间的逻辑连接关系(即搭建思路)均为可见的,若多个用户使用同一设备上运行的通用视觉平台进行视觉方案设计,若在前使用的用户在设计完成后未删除设计的视觉方案,在后使用的用户可以随意查看并借鉴在前使用的用户设计的视觉方案。
此外,由于设计好的视觉方案在实际应用时,可能会需要对方案设计时配置的部分算法模块的参数进行调整,或/和,对部分算法模块的配置信息(如检测区域)重新设定,因此,通过对整个视觉方案进行加密的方式来保护视觉方案的实现方式可实施性较差。
因而,为了对视觉方案进行保护,提高视觉方案内容的安全性,在进行视觉方案设计时,可以对视觉方案中的指定模块(如关键算法模块)进行加密。
相应地,当视觉平台(如通用视觉平台)接收到针对目标视觉方案中的目标模块的加密指令时,视觉平台可以响应该加密指令对该目标模块进行加密,并保存加密信息。
举例来说,当视觉平台接收到针对目标模块的加密指令,例如,用户在视觉平台中选中目标视觉方案中的目标模块,并选择右键菜单中的“加密”选项时,视觉平台可以输出加密信息输入框,以提示用户输入加密信息,并依据用户通过加密信息输入框输入的加密信息,对目标模块进行加密,并保存该加密信息。
步骤S120、当接收到针对目标模块的编辑指令时,输出加密验证提示信息。
示例性的,该编辑指令可以包括但不限于用于查看目标模块的指令或用于修改目标模块的配置信息的指令。
步骤S130、基于该加密信息对响应加密验证提示信息输入的待验证加密信息进行验证。若验证通过,则允许针对目标模块的编辑操作;否则,拒绝针对目标模块的编辑操作。
本申请实施例中,当用户需要针对目标模块进行编辑,如进行查看或修改配置信息等编辑时,需要先通过加密验证。
相应地,当视觉平台接收到针对目标模块的编辑指令时,可以输出加密验证提示信息,该加密验证提示信息用于提示输入加密信息(本文中称为待验证加密信息)进行验证。
例如,视觉平台接收到针对目标模块的编辑指令时,可以输出一个加密信息输入框,以提示用户输入待验证加密信息。
当视觉平台接收到响应加密验证提示信息输入的待验证加密信息时,视觉平台可以依据上述保存的加密信息,对接收到的待验证加密信息进行验证。
当确定接收到的待验证加密信息与保存的加密信息一致时,确定加密验证通过,此时,可以允许针对目标模块的编辑操作。
当确定接收到的待验证加密信息与保存的加密信息不一致时,确定加密验证不通过,此时,可以拒绝针对该目标模块的编辑操作。
需要说明的是,考虑到视觉方案设计好之后,可能会在不同的视觉平台上运行,因而,视觉平台在保存加密信息时,可以按照预设加密算法将加密信息保存到视觉方案中,且视觉平台中可以预置对应的解密算法(该解密算法可以预置于视觉平台的安装文件中,视觉平台后可以获取到该解密算法),当需要进行加密验证时,视觉平台可以基于预置的解密算法,对加密后的加密信息进行解密,并基于得到的加密信息进行加密验证。
本申请实施例中,为了实现视觉方案的保护,可以对算法模块、算法模块之间的逻辑连接关系和/或算法模块的参数进行保护。
此外,为了提高视觉方案设计的灵活性,视觉方案设计不需要局限于使用视觉平台已提供的功能确定的算法模块,还可以通过自定义的方式,设计新的算法模块,并通过自定义算法模块和已有算法模块共同实现需要实现的视觉功能,在该情况下,在对视觉方案进行保护时,还可以对该自定义的算法模块、该自定义算法模块的参数和/或该自定义算法模块与其它算法模块(可以包括其它自定义算法模块或已有算法模块)之间的逻辑连接关系进行加密。
相应地,在一些实施例中,目标模块包括上述N1个算法模块中的N2个算法模块,2≤N2≤N1,该N2个算法模块中包括视觉平台预先提供的算法模块,和/或,通过对视觉平台预留的可编辑模块进行自定义编辑得到的脚本模块。
步骤S110中,响应所述加密指令对所述目标模块进行加密,包括:
对N2个算法模块、N2个算法模块的逻辑连接关系以及N2个算法模块的参数进行加密。
示例性的,可以将多个实体模块(即算法模块)组合成一个整体来使用(该多个实体模块可以称为一个group(模块组),也可以称为工具包),在进行视觉方案设计时,可以对包括多个算法模块的模块组进行加密,其具体实现可以在下文中结合具体实例进行说明。
示例性的,为了提高视觉方案设计的灵活性,视觉平台除了可以提供功能确定的算法模块之外,还可以预留可编辑模块(也可以称为可编程模块),该可编辑模块的内容可以由视觉方案设计方根据自身需求确定,具有非常高的灵活性,能够满足定制化、个性化需求。
示例性的,上述构成模块组的N2个算法模块可以包括视觉平台预先提供的算法模块,和/或,通过对视觉平台预留的可编辑模块进行自定义编辑得到的脚本模块(也可以称为自定义脚本模块或脚本算法模块)。
当通过视觉平台进行视觉方案设计时,可以根据需求对特定的包括多个算法模块(即上述N2个算法模块)的模块组进行加密,以保护方案实现核心。
视觉平台接收到针对该模块组(即上述目标模块)的加密指令时,可以对请求加密的模块组进行加密。
在另一些实施例中,目标模块可以包括单个算法模块,该单个算法模块为通过对视觉平台预留的可编辑模块进行自定义编辑得到的脚本模块;
步骤S110中,响应加密指令对目标模块进行加密,可以包括:
对该单个脚本模块、该单个脚本模块的参数进行加密。
示例性的,为了提高视觉方案设计的灵活性,视觉平台除了可以提供功能确定的算法模块之外,还可以预留可编辑模块(也可以称为可编程模块),该可编辑模块的内容可以由视觉方案设计方根据自身需求确定,具有非常高的灵活性,能够满足定制化、个性化需求。
视觉方案设计方可以使用对可编辑模块进行编辑来实现特定功能的算法模块(即脚本模块),并通过该脚本模块来实现关键功能。
示例性的,单个脚本模块可以用于实现单个算法模块的功能,或,也可以用于实现多个算法模块提供的组合功能。
相应地,可以通过对脚本模块进行加密的方式,来实现对视觉方案的保护。
当通过视觉平台进行视觉方案设计时,可以请求对脚本模块进行加密。
视觉平台接收到针对脚本模块(即上述目标模块)的加密指令时,可以对请求加密的自定义脚本模块进行加密。
在一个示例中,本申请实施例提供的数据处理方法还可以包括:
当检测到针对视觉平台预留的可编辑模块的编辑指令时,输出脚本编辑界面,该脚本编辑界面中包括脚本编辑模板,该脚本编辑模板包括用于自定义代码编辑的可编辑代码区域;
检测通过可编辑代码区域输入的自定义代码,并依据自定义代码生成脚本模块。
示例性的,为了提高脚本模块的编辑效率,视觉平台还可以预先提供脚本编辑模板,该脚本编辑模板可以包括用于自定义代码编辑的可编辑代码区域。
需要说明的是,对于不同算法模块通用的代码部分,如代码头部,代码模板中可以提供固定设置,在进行自定义脚本编辑时可以不需要额外编辑,以提高编辑效率。
示例性的,当检测到针对视觉平台预留的可编辑模块的编辑指令时,可以输出脚本编辑界面,该脚本编辑界面中可以提供脚本编辑模板,该脚本编辑模块可以提供用于自定义代码编辑的可编辑代码区域,从而,视觉方案设计方可以通过对该可编辑代码区域进行代码编辑,实现算法模块个性化定制。
当检测到通过可编辑代码区域输入的自定义代码时,可以依据该自定义代码生成脚本模块。
本申请实施例中,为了实现视觉方案的保护,除了可以按照上述实施例中描述的方式对算法模块、算法模块的参数和/或算法模块之间的逻辑关系进行加密之外,还可以导出视觉方案对应的运行程序,并以该运行程序替代视觉方案本身进行使用,以降低视觉方案内容泄漏的概率。
相应地,在一些实施例中,上述方法还可以包括:
接收针对目标视觉方案的导出指令;
导出目标视觉方案对应的目标运行程序;其中,该目标运行程序运行时输出目标视觉方案对应的运行界面,该运行界面用于展示目标视觉方案对应的指定图形、图像或/和数据。
示例性的,考虑到视觉方案设计完成并交付后,使用方通常关注的是运行结果,而对于视觉方案本身并不会特别关注。
为了更好地保护视觉方案,避免视觉方案中需要保护的内容的泄漏,视觉方案设计完成后,可以导出视觉方案对应的运行程序,并以该运行程序替代视觉方案本身进行使用。
相应地,当视觉平台接收到针对目标视觉方案的导出指令时,可以导出目标视觉方案对应的运行程序(本文中称为目标运行程序)。
当需要使用目标视觉方案时,可以通过运行目标运行程序,如通过视觉平台运行目标运行程序,以得到目标视觉方案对应的运行界面,该运行界面中可以展示目标视觉方案对应的指定图形、图像或/和数据。
举例来说,当运行目标程序时,可以在输出的运行界面中输入待检测图片(采集到的图片),该图片经过视觉方案处理之后,可以得到处理数据,运行界面中可以展示得到的处理数据。
例如,假设任务要求识别图片中的某一个孔,则上述运行界面可以将识别到的孔展示出来。
对于锡焊漏焊检测任务,上述运行界面可以将锡焊区域标识出来。
对于针脚检测任务,上述视觉方案可以检测针脚是否歪了,并在运行界面中用红色的方式将针脚标识出来。
此外,上述运行界面还可以展示输入的图片或处理后的图像,如输入图片进行图像增强、腐蚀、膨胀等处理的图像,以过滤掉一些干扰信息。
在一个示例中,运行界面还用于展示参数修改功能按钮;
该参数修改功能按钮用于触发输出参数修改功能界面,参数修改功能界面中包括预设的可修改参数项,可修改参数项的值能够依据修改指令进行更新。
示例性的,考虑到视觉方案在交付应用后,可能会存在某些参数需要根据实际需求进行修改的情况。
举例来说,以自动化手机贴膜为例,通过视觉方案可以实现自动识别手机在图像中的位置,然后依据手机在图像中的位置,引导机械臂对进行手机贴膜。考虑到不同颜色的手机的反光度可能会不同,若使用相同的曝光参数获取手机图像,在对图像中的手机进行识别时,可能会降低识别准确性,从而影响贴膜效果,因此,视觉方案交付应用后,控制相机曝光参数的参数项的值需要能够根据实际需求进行修改。
相应地,上述导出的目标视觉方案对应的目标运行程序对应的运行界面还可以用于展示参数修改功能按钮,该参数修改功能按钮用于触发输出参数修改功能界面,即当目标运行程序运行,并检测到针对该参数修改功能按钮的选择指令时,可以输出参数修改功能界面,该参数修改功能界面中可以包括预设的可修改参数项。
示例性的,该可修改参数项的值能够依据修改指令进行更新,即目标运行程序可以在检测到参数修改功能界面中的特定可修改参数项(可以称为目标可修改参数项)的修改指令时,可以依据该修改指令对目标可修改参数项的值进行更新,从而,在对视觉方案进行保护的同时,能够满足用户的个性化使用需求。
在一个示例中,上述目标运行程序可以独立于视觉平台运行。
示例性的,视觉方案设计完成后,可以导出为独立于视觉平台运行的运行程序,如.exe程序,进一步提高视觉方案内容的安全性。
在一个示例中,上述接收针对目标视觉方案的导出指令之后,还可以包括:
导出可编辑代码工具,该可编辑代码工具用于触发输出编辑界面,该编辑界面用于代码输入;
其中,目标区域的句柄通过目标运行程序的软件开发工具包SDK传入目标运行程序,以控制目标运行程序的运行界面在目标区域中展示,该目标区域为依据该编辑界面中输入的代码确定的用于展示目标运行程序的运行界面的区域。
示例性的,为了实现更高级别的个性化方案保护,在通过视觉方案导出的方式进行视觉方案保护时,还可以导出可编辑代码工具,即视觉平台接收到针对目标视觉方案的导出指令时,还可以导出可编辑代码工具。
示例性的,该可编辑代码工具可以用于触发输出编辑界面,该编辑界面可以用于代码输入。
例如,可以通过输入指令触发可编辑代码工具运行,从而触发该可编辑代码工具输出编辑界面,并通过在该编辑界面中输入代码实现个性化功能。
示例性的,通过上述可编辑代码功能提供的编辑界面,视觉方案导出的目标运行程序的运行界面不再独占显示窗口,而是可以与通过该编辑界面输入的代码实现的功能的运行界面叠加显示,其示意图可以如图4B所示。
示例性的,如图4B所示,运行界面1为目标运行程序的运行界面,运行界面2~运行界面N为通过该编辑界面输入的代码实现的功能的运行界面。
需要说明的是,图4B所示的运行界面显示方式仅仅是本申请实施例中对多个运行界面进行显示的一种示例,而并不是对本申请保护范围的限定。
在通过该编辑界面进行个性化功能编辑时,可以确定用于展示目标运行程序的运行界面的区域(本文中称为目标区域),并通过目标运行程序的SDK(Software DevelopmentKit,软件开发工具包)将目标区域的句柄传入目标运行程序,控制目标运行程序的运行界面在目标区域中展示,从而实现多个运行界面的叠加显示。
为了使本领域技术人员更好地理解本申请实施例提供的技术方案,下面结合具体实例对本申请实施例提供的方案进行说明。
下面分别对上述实施例中提供的视觉方案内容保护方式进行说明。
方式一、对视觉方案中包括多个算法模块的模块组进行加密
视觉平台中的模块可以至少包括但不限于两种:一种是实体算法模块,每一个实体算法模块都有确定的功能;另一种是工具包,把多个实体算法模块组合成一个整体来使用(即模块组,可以称为Group)。该Group相当于一个框,具体的功能由装入框中的实体算法模块来提供,该框定义了明确的输入和输出。
举例来说,如图2所示,假设需要实现定位和贴合,在设计视觉方案时,对于从相机模块中获取到的图像,可以使用第一个Group来定位到特征点,使用第二个Group来计算特征点与基准的偏差,并计算出贴合偏移量。第一个Group内部由指定算法模块来定位具体的特征点,并输出这个特征点,作为整个定位Group的输出。
不同视觉集成商的定位可能采用完全不同的方案,从而带来不同的定位效率和定位精度,通过对该用于定位具体的特征点的Group(即上述第一个Group)进行加密,可以很好地保护个性化方案。
示例性的,如图2所示,该用于定位具体的特征点的Group可以包括用于实现直线查找功能的算法模块(可以称为“直线查找”模块)和用于确定直线交点的算法模块(可以称为“直线交点”模块),当对该Group进行加密时,可以对该“直线查找”模块和“直线交点”模块,以及模块之间的逻辑连接关系和各算法模块的参数进行加密。
需要说明的是,为了提高视觉方案设计的灵活性,视觉平台除了可以提供功能确定的算法模块之外,还可以预留可编辑模块,该可编辑模块的内容可以由视觉方案设计方根据自身需求确定,具有非常高的灵活性,能够满足定制化、个性化需求。
上述Group可以包括视觉平台提供的功能确定的算法模块,和/或,通过对视觉平台预留的可编辑模块进行自定义编辑得到的脚本模块。
方式二、对自定义脚本进行加密
脚本模块可以通过对视觉平台预留的可编辑模块进行代码编辑得到,该脚本模块的内容可以由视觉方案设计方根据自身需求确定,具有非常高的灵活性,能够满足定制化、个性化需求。
仍以实现定位和贴合为例,请参见图3,在设计视觉方案时,可以通过脚本模块实现定位功能,通过该脚本模块定位具体的特征点,并输出这个特征点,使用用于贴合的Group来计算特征点与基准的偏差,并计算出贴合偏移量。
不同视觉集成商可以采用不同的脚本模块来实现不同定位效率和定位精度的定位方案,通过对脚本模块进行加密的方式,提高视觉方案内容的安全性,可以很好地保护个性化方案。
方式三、通过导出视觉方案的运行界面实现保护
运行界面是一个自定义的展示界面,可以将视觉方案中的需要关心的图像和数据集中在运行界面上输出展示。让视觉方案使用方在使用视觉方案的过程中只需要关注运行界面,而不用关注视觉方案本身。
请参见图4A,视觉方案导出的运行界面可以如图4A所示,该运行界面可以提供“运行”、“连续运行”、“停止”、“NG/OK”等功能按钮(即图4A中运行界面下方的一排功能按钮)。
视觉方案使用方可以在使用视觉方案执行任务时,每进行一次检测,手动点击一次“运行”按钮(针对检测间隔较长的应用场景)或者,通过点击“连续运行”按钮,持续性地进行检测,并在需要停止检测时,点击“停止按钮”。
“NG/OK”为检测状态,例如,对于二维码识别,若识别到二维码,则输出“OK”;否则,输出“NG”。
需要说明的是,图4A所示运行界面中“导出”和“界面编辑”功能按钮可以为视觉方案调试时提供的功能按钮。
其中,“界面编辑”功能按钮用于编辑运行界面中的功能按钮和图像,如新增或删除功能按钮、设置多窗口模式等。
在将视觉方案交付给视觉方案使用方时,可以不提供这两个功能按钮。
通过将视觉方案设置为运行界面启动,可以使竞争对手无法看到具体的视觉方案细节,只能看到运行结果,很好地保护个性化方案。
示例性的,上述运行界面还可以提供参数修改功能按钮(未在图中示出)。该参数修改功能按钮可以用于触发输出参数修改功能界面,即用户可以通过选择该参数修改功能按钮,触发视觉方案对应的运行程序输出参数修改功能界面,从而,可以通过该参数修改功能界面,依据实际需求对可修改参数项的值进行修改,如对相机曝光参数进行修改。
示例性的,可以将运行界面导出为独立运行的.exe程序,完全独立于视觉平台运行,更好地保护视觉方案的内容。
其中,运行界面也可以导出为可编辑的代码工具(即上述可编辑代码工具),视觉方案集成商还可以在此基础上添加独特代码来达到更高级别的个性化方案保护。
示例性的,该可编辑代码工具可以用于触发输出编辑界面,视觉方案集成商可以通过指令触发该可编辑代码工具运行,从而触发该可编辑代码工具输出编辑界面,并通过在该编辑界面中输入代码实现个性化功能。
在通过该编辑界面进行个性化功能编辑时,可以确定用于展示目标运行程序的运行界面的区域(即上述目标区域),并通过目标运行程序的SDK将目标区域的句柄传入目标运行程序,控制目标运行程序的运行界面在目标区域中展示,从而实现多个运行界面的叠加显示。
需要说明的是,上述方式一~方式三可以两两组合或者三者组合使用,以实现更加个性化,且安全性更高的视觉方案保护,其具体实现在此不做赘述。
以上对本申请提供的方法进行了描述。下面对本申请提供的装置进行描述:
请参见图5,为本申请实施例提供的一种数据处理装置的结构示意图,如图5所示,该数据处理装置可以包括:
接收单元510,用于接收针对目标视觉方案中的目标模块的加密指令;所述目标视觉方案包括用以实现特定视觉功能的N1个算法模块、所述N1个算法模块的逻辑连接关系以及所述N1个算法模块的参数,所述目标模块包括所述N1个算法模块中的部分算法模块;N1≥2;
加密单元520,用于响应所述加密指令对所述目标模块进行加密,并保存加密信息;
验证单元530,用于当所述接收单元510接收到针对所述目标模块的编辑指令时,输出加密验证提示信息;所述编辑指令包括用于查看所述目标模块的指令或用于修改所述目标模块的配置信息的指令;
所述验证单元530,还用于基于所述加密信息对响应所述加密验证提示信息输入的待验证加密信息进行验证;
处理单元540,用于若所述验证单元530验证通过,则允许针对所述目标模块的编辑操作;否则,拒绝针对所述目标模块的编辑操作。
在一些实施例中,所述目标模块包括所述N1个算法模块中的N2个算法模块,2≤N2≤N1,所述N2个算法模块中包括所述视觉平台预先提供的算法模块,和/或,通过对所述视觉平台预留的可编辑模块进行自定义编辑得到的脚本模块;
所述加密单元520响应所述加密指令对所述目标模块进行加密,包括:
对所述N2个算法模块、所述N2个算法模块的逻辑连接关系以及所述N2个算法模块的参数进行加密。
在一些实施例中,所述目标模块包括单个算法模块,所述单个算法模块为通过对所述视觉平台预留的可编辑模块进行自定义编辑得到的脚本模块;
所述加密单元520响应所述加密指令对所述目标模块进行加密,包括:
对所述单个脚本模块、所述单个脚本模块的参数进行加密;
其中,所述处理单元,还用于当检测到针对所述视觉平台预留的可编辑模块的编辑指令时,输出脚本编辑界面,所述脚本编辑界面中包括脚本编辑模板,所述脚本编辑模板包括用于自定义代码编辑的可编辑代码区域;
检测通过所述可编辑代码区域输入的自定义代码,并依据所述自定义代码生成脚本模块。
在一些实施例中,所述接收单元510,还用于接收针对所述目标视觉方案的导出指令;
所述处理单元540,还用于导出所述目标视觉方案对应的目标运行程序;其中,所述目标运行程序运行时输出所述目标视觉方案对应的运行界面,所述运行界面用于展示所述目标视觉方案对应的指定图形、图像或/和数据。
在一些实施例中,所述运行界面还用于展示参数修改功能按钮;
所述参数修改功能按钮用于触发输出参数修改功能界面,所述参数修改功能界面中包括预设的可修改参数项,所述可修改参数项的值能够依据修改指令进行更新。
在一些实施例中,所述目标运行程序独立于所述视觉平台运行。
在一些实施例中,所述处理单元540在所述接收单元510接收针对所述目标视觉方案的导出指令之后,还包括:
导出可编辑代码工具,所述可编辑代码工具用于触发输出编辑界面,所述编辑界面用于代码输入;
其中,目标区域的句柄通过所述目标运行程序的软件开发工具包SDK传入所述目标运行程序,以控制所述目标运行程序的运行界面在所述目标区域中展示,所述目标区域为依据所述编辑界面中输入的代码确定的用于展示所述目标运行程序的运行界面的目标区域。
本申请实施例提供一种电子设备,包括处理器和存储器,其中,存储器存储有能够被所述处理器执行的机器可执行指令,处理器用于执行机器可执行指令,以实现上文描述的数据处理方法。
请参见图6,为本申请实施例提供的一种电子设备的硬件结构示意图。该电子设备可包括处理器601、存储有机器可执行指令的存储器602。处理器601与存储器602可经由系统总线603通信。并且,通过读取并执行存储器602中与数据处理逻辑对应的机器可执行指令,处理器601可执行上文描述的数据处理方法。
本文中提到的存储器602可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(RadomAccess Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
在一些实施例中,还提供了一种机器可读存储介质,如图6中的存储器602,该机器可读存储介质内存储有机器可执行指令,所述机器可执行指令被处理器执行时实现上文描述的数据处理方法。例如,所述机器可读存储介质可以是ROM、RAM、CD-ROM、磁带、软盘和光数据存储设备等。
本申请实施例还提供了一种计算机程序,存储于机器可读存储介质,例如图6中的存储器602,并且当处理器执行该计算机程序时,促使处理器601执行上文中描述的数据处理方法。
需要说明的是,在本文中,诸如目标和目标等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (11)
1.一种数据处理方法,其特征在于,应用于视觉平台,所述方法包括:
接收针对目标视觉方案中的目标模块的加密指令;所述目标视觉方案包括用以实现特定视觉功能的N1个算法模块、所述N1个算法模块的逻辑连接关系以及所述N1个算法模块的参数,所述目标模块包括所述N1个算法模块中的部分算法模块;N1≥2;
响应所述加密指令对所述目标模块进行加密,并保存加密信息;
当接收到针对所述目标模块的编辑指令时,输出加密验证提示信息;所述编辑指令包括用于查看所述目标模块的指令或用于修改所述目标模块的配置信息的指令;
基于所述加密信息对响应所述加密验证提示信息输入的待验证加密信息进行验证,若验证通过,则允许针对所述目标模块的编辑操作;否则,拒绝针对所述目标模块的编辑操作。
2.根据权利要求1所述的方法,其特征在于,所述目标模块包括所述N1个算法模块中的N2个算法模块,2≤N2≤N1,所述N2个算法模块中包括所述视觉平台预先提供的算法模块,和/或,通过对所述视觉平台预留的可编辑模块进行自定义编辑得到的脚本模块;
所述响应所述加密指令对所述目标模块进行加密,包括:
对所述N2个算法模块、所述N2个算法模块的逻辑连接关系以及所述N2个算法模块的参数进行加密。
3.根据权利要求1所述的方法,其特征在于,所述目标模块包括单个算法模块,所述单个算法模块为通过对所述视觉平台预留的可编辑模块进行自定义编辑得到的脚本模块;
所述响应所述加密指令对所述目标模块进行加密,包括:
对所述单个算法模块、所述单个算法模块的参数进行加密。
4.根据权利要求2或3所述的方法,其特征在于,所述方法还包括:
当检测到针对所述视觉平台预留的可编辑模块的编辑指令时,输出脚本编辑界面,所述脚本编辑界面中包括脚本编辑模板,所述脚本编辑模板包括用于自定义代码编辑的可编辑代码区域;
检测通过所述可编辑代码区域输入的自定义代码,并依据所述自定义代码生成脚本模块。
5.根据权利要求1~3任一项所述的方法,其特征在于,所述方法还包括:
接收针对所述目标视觉方案的导出指令;
导出所述目标视觉方案对应的目标运行程序;其中,所述目标运行程序运行时输出所述目标视觉方案对应的运行界面,所述运行界面用于展示所述目标视觉方案对应的指定图形、图像或/和数据。
6.根据权利要求5所述的方法,其特征在于,所述运行界面还用于展示参数修改功能按钮;
所述参数修改功能按钮用于触发输出参数修改功能界面,所述参数修改功能界面中包括预设的可修改参数项,所述可修改参数项的值能够依据修改指令进行更新。
7.根据权利要求5所述的方法,其特征在于,所述目标运行程序独立于所述视觉平台运行。
8.根据权利要求5所述的方法,其特征在于,所述接收针对所述目标视觉方案的导出指令之后,还包括:
导出可编辑代码工具,所述可编辑代码工具用于触发输出编辑界面,所述编辑界面用于代码输入;
其中,目标区域的句柄通过所述目标运行程序的软件开发工具包SDK传入所述目标运行程序,以控制所述目标运行程序的运行界面在所述目标区域中展示,所述目标区域为依据所述编辑界面中输入的代码确定的用于展示所述目标运行程序的运行界面的目标区域。
9.一种数据处理装置,其特征在于,应用于视觉平台,所述装置包括:
接收单元,用于接收针对目标视觉方案中的目标模块的加密指令;所述目标视觉方案包括用以实现特定视觉功能的N1个算法模块、所述N1个算法模块的逻辑连接关系以及所述N1个算法模块的参数,所述目标模块包括所述N1个算法模块中的部分算法模块;N1≥2;
加密单元,用于响应所述加密指令对所述目标模块进行加密,并保存加密信息;
验证单元,用于当所述接收单元接收到针对所述目标模块的编辑指令时,输出加密验证提示信息;所述编辑指令包括用于查看所述目标模块的指令或用于修改所述目标模块的配置信息的指令;
所述验证单元,还用于基于所述加密信息对响应所述加密验证提示信息输入的待验证加密信息进行验证;
处理单元,用于若所述验证单元验证通过,则允许针对所述目标模块的编辑操作;否则,拒绝针对所述目标模块的编辑操作。
10.根据权利要求9所述的装置,其特征在于,所述目标模块包括所述N1个算法模块中的N2个算法模块,2≤N2≤N1,所述N2个算法模块中包括所述视觉平台预先提供的算法模块,和/或,通过对所述视觉平台预留的可编辑模块进行自定义编辑得到的脚本模块;
所述加密单元响应所述加密指令对所述目标模块进行加密,包括:
对所述N2个算法模块、所述N2个算法模块的逻辑连接关系以及所述N2个算法模块的参数进行加密;
和/或,
所述目标模块包括单个算法模块,所述单个算法模块为通过对所述视觉平台预留的可编辑模块进行自定义编辑得到的脚本模块;
所述加密单元响应所述加密指令对所述目标模块进行加密,包括:
对所述单个算法模块、所述单个算法模块的参数进行加密;
其中,所述处理单元,还用于当检测到针对所述视觉平台预留的可编辑模块的编辑指令时,输出脚本编辑界面,所述脚本编辑界面中包括脚本编辑模板,所述脚本编辑模板包括用于自定义代码编辑的可编辑代码区域;
检测通过所述可编辑代码区域输入的自定义代码,并依据所述自定义代码生成脚本模块;
和/或,
所述接收单元,还用于接收针对所述目标视觉方案的导出指令;
所述处理单元,还用于导出所述目标视觉方案对应的目标运行程序;其中,所述目标运行程序运行时输出所述目标视觉方案对应的运行界面,所述运行界面用于展示所述目标视觉方案对应的指定图形、图像或/和数据;
其中,所述运行界面还用于展示参数修改功能按钮;
所述参数修改功能按钮用于触发输出参数修改功能界面,所述参数修改功能界面中包括预设的可修改参数项,所述可修改参数项的值能够依据修改指令进行更新;
其中,所述目标运行程序独立于所述视觉平台运行;
其中,所述处理单元在所述接收单元接收针对所述目标视觉方案的导出指令之后,还包括:
导出可编辑代码工具,所述可编辑代码工具用于触发输出编辑界面,所述编辑界面用于代码输入;
其中,目标区域的句柄通过所述目标运行程序的软件开发工具包SDK传入所述目标运行程序,以控制所述目标运行程序的运行界面在所述目标区域中展示,所述目标区域为依据所述编辑界面中输入的代码确定的用于展示所述目标运行程序的运行界面的目标区域。
11.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器用于执行机器可执行指令,以实现如权利要求1-8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110352250.1A CN113111361B (zh) | 2021-03-31 | 2021-03-31 | 数据处理方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110352250.1A CN113111361B (zh) | 2021-03-31 | 2021-03-31 | 数据处理方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113111361A CN113111361A (zh) | 2021-07-13 |
CN113111361B true CN113111361B (zh) | 2022-07-29 |
Family
ID=76713518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110352250.1A Active CN113111361B (zh) | 2021-03-31 | 2021-03-31 | 数据处理方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113111361B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2743903A2 (en) * | 2012-12-13 | 2014-06-18 | Thomson Licensing | Method and device for 3d object encryption by application of a function modified using a secret key |
WO2017136343A1 (en) * | 2016-02-05 | 2017-08-10 | Mcafee, Inc. | Trusted indicators to secure visual outputs |
CN109284159A (zh) * | 2018-08-17 | 2019-01-29 | 平安科技(深圳)有限公司 | 信息处理方法、装置、计算机设备及存储介质 |
CN112416210A (zh) * | 2020-11-11 | 2021-02-26 | 珠海格力电器股份有限公司 | 信息加密和解密方法、系统、存储介质及电子设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10970378B2 (en) * | 2019-05-13 | 2021-04-06 | Cyberark Software Ltd. | Secure generation and verification of machine-readable visual codes |
-
2021
- 2021-03-31 CN CN202110352250.1A patent/CN113111361B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2743903A2 (en) * | 2012-12-13 | 2014-06-18 | Thomson Licensing | Method and device for 3d object encryption by application of a function modified using a secret key |
WO2017136343A1 (en) * | 2016-02-05 | 2017-08-10 | Mcafee, Inc. | Trusted indicators to secure visual outputs |
CN109284159A (zh) * | 2018-08-17 | 2019-01-29 | 平安科技(深圳)有限公司 | 信息处理方法、装置、计算机设备及存储介质 |
CN112416210A (zh) * | 2020-11-11 | 2021-02-26 | 珠海格力电器股份有限公司 | 信息加密和解密方法、系统、存储介质及电子设备 |
Non-Patent Citations (1)
Title |
---|
目标成像处理算法验证平台设计与实现;毛征等;《系统仿真技术》;20110128(第01期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113111361A (zh) | 2021-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11776348B2 (en) | Contactless card personal identification system | |
EP3016349B1 (en) | Method and apparatus for verifying terminal and computer program product | |
WO2017113790A1 (zh) | 实现扫码蓝牙自动连接方法、主设备、从设备和系统 | |
CN105049597A (zh) | 移动终端图片浏览时进入访客模式的交互方法及交互系统 | |
US11353964B2 (en) | Wearable device for displaying con lent, and method thereof | |
CN106133739A (zh) | 数据到安全元件的非易失性存储器中的加载的安全保护 | |
EP3817414B1 (en) | Method and device for configuring a nfc smart card | |
CN111949192A (zh) | 密码输入提示方法、装置和电子设备 | |
CN113111361B (zh) | 数据处理方法、装置及电子设备 | |
KR20070024100A (ko) | 이미지 키 입력을 통한 네트워크 보안 시스템 및 그 방법 | |
CN108037912A (zh) | 显示页面信息的方法、装置 | |
CN107180169A (zh) | 一种软件激活方法及装置 | |
CN108696355B (zh) | 一种防止用户头像盗用的方法及系统 | |
CN112199657B (zh) | 一种基于虚拟现实环境的身份认证方法和vr装置 | |
CN112099797B (zh) | 一种基于工控屏的功能设置方法、装置及工控屏 | |
WO2018014400A1 (zh) | 一种用户输入管理方法及装置、终端 | |
CN111797383A (zh) | 密码验证方法、装置及电子设备 | |
KR102547421B1 (ko) | 사용자 접근 제어 방법 및 상기 방법에 의해 사용자 접근이 제어되는 단말 | |
CN104717064A (zh) | 一种密码防窥视的方法和用户终端 | |
CN114615067A (zh) | 群组操作方法、群组操作装置、电子设备和可读存储介质 | |
CN115982670A (zh) | 对象加密方法、装置、电子设备及存储介质 | |
KR20200056293A (ko) | 컨텐트를 디스플레이하는 웨어러블 장치 및 그 방법 | |
CN115473736A (zh) | 数据请求消息验证方法、装置、设备及存储介质 | |
KR101595340B1 (ko) | 보안 장치 | |
CN116800498A (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 | ||
CP01 | Change in the name or title of a patent holder |
Address after: 310051 room 304, B / F, building 2, 399 Danfeng Road, Binjiang District, Hangzhou City, Zhejiang Province Patentee after: Hangzhou Hikvision Robot Co.,Ltd. Address before: 310051 room 304, B / F, building 2, 399 Danfeng Road, Binjiang District, Hangzhou City, Zhejiang Province Patentee before: HANGZHOU HIKROBOT TECHNOLOGY Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |