CN110765821B - 图像识别的方法及装置 - Google Patents
图像识别的方法及装置 Download PDFInfo
- Publication number
- CN110765821B CN110765821B CN201810846274.0A CN201810846274A CN110765821B CN 110765821 B CN110765821 B CN 110765821B CN 201810846274 A CN201810846274 A CN 201810846274A CN 110765821 B CN110765821 B CN 110765821B
- Authority
- CN
- China
- Prior art keywords
- target
- value
- division
- operation function
- image recognition
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Probability & Statistics with Applications (AREA)
- Multimedia (AREA)
- Image Processing (AREA)
- Studio Devices (AREA)
Abstract
本发明公开了一种图像识别的方法及装置,属于电子技术领域。所述方法包括:获取摄像设备当前采集的目标图像;将所述目标图像输入预设的图像识别模型,输出得到所述目标图像的图像识别结果;其中,所述图像识别模型中包括除法转换运算函数,所述除法转换运算函数包括减法运算和乘法运算。采用本发明,可以提高图像识别的效率。
Description
技术领域
本发明涉及电子技术领域,特别涉及一种图像识别的方法及装置。
背景技术
随着电子技术的发展,行车记录仪中可以自动识别前方车辆,以便检测前方车辆的行驶状态等,辅助用户驾驶。
行车记录仪中可以基于图像识别模型对当前采集的图像进行识别处理,为了达到快速识别的目的,该图像识别模型可以是YOLO网络(一种可以一次性预测多个物体的位置和类别的卷积神经网络),其中,YOLO网络在输出模块中可以基于Softmax软回归分类器对图像中的物体进行分类。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
Softmax软回归分类器一般由除法运算实现,但是除法指令的运算逻辑较为复杂,指令周期比加法指令、减法指令等要长得多,例如,除法指令在对32位的数据进行运算时,指令周期约为加法指令的40倍。除法运算需要消耗较多的运算时间,运算效率较低,从而,导致行车记录仪识别图像的实时性较差。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种图像识别的方法及装置。所述技术方案如下:
第一方面,提供了一种图像识别的方法,该方法包括:
获取摄像设备当前采集的目标图像;
将所述目标图像输入预设的图像识别模型,输出得到所述目标图像的图像识别结果;
其中,所述图像识别模型中包括除法转换运算函数,所述除法转换运算函数包括减法运算和乘法运算。
可选的,所述除法转换运算函数为浮点除法转换运算函数。
可选的,所述除法转换运算函数包括目标初值算式和预设级数的牛顿迭代公式,所述目标初值算式的输出是所述预设级数的牛顿迭代公式的输入。
可选的,所述获取摄像设备当前采集的目标图像之前,还包括:
获取初始初值算式,其中,所述初始初值算式中的初始卡马克数的指数部分根据第一初值与第一真值的第一相对误差确定,所述第一初值是任意数值代入所述初始初值算式的得数,所述第一真值是所述任意数值代入所述除法转换运算函数对应的除法算式的得数;
对于预设数值范围内的每个数值,确定所述每个数值的第二初值与第二真值的第二相对误差,其中,所述第二初值是所述每个数值代入所述初始初值算式的得数,所述第二真值是所述每个数值代入所述除法转换运算函数对应的除法算式的得数;
在所述预设数值范围内的数值中,确定对应的第二相对误差最大的目标数值;
基于所述目标数值,调整所述初始尾数部分,得到包含由所述指数部分和调整得到的目标尾数部分组成的目标卡马克数的所述目标初值算式,其中,所述目标数值代入所述目标初值算式的得数与所述目标数值对应的第二真值的第三相对误差小于所述目标数值对应的第二相对误差。
可选的,所述除法转换运算函数为倒数转换运算函数;
所述目标初值算式为0x7f000fe1-x0,其中,0x7f000fe1为所述目标卡马克数,x0为所述除法转换运算函数的输入数值。
可选的,所述图像识别模型中包括至少一种算式类型信息对应的除法转换运算函数。
可选的,所述将所述目标图像输入预设的图像识别模型,输出得到所述目标图像的图像识别结果,包括:
将所述目标图像输入所述图像识别模型,当所述图像识别模型调用目标除法运算函数时,所述图像识别模型执行以下步骤:
获取所述目标除法运算函数的算式类型信息;
基于预先存储的算式类型信息与除法转换运算函数的对应关系,确定所述目标除法运算函数的算式类型信息对应的目标除法转换运算函数;
将所述目标除法运算函数的输入数值,输入到所述目标除法转换运算函数中,将所述目标除法转换运算函数的运算结果确定为所述目标除法运算函数的运算结果;基于所述目标除法运算函数的运算结果,确定所述目标图像的所述图像识别结果。
第二方面,提供了一种图像识别的装置,该装置包括:
第一获取模块,用于获取摄像设备当前采集的目标图像;
识别模块,用于将所述目标图像输入预设的图像识别模型,输出得到所述目标图像的图像识别结果;
其中,所述图像识别模型中包括除法转换运算函数,所述除法转换运算函数包括减法运算和乘法运算。
可选的,所述除法转换运算函数为浮点除法转换运算函数。
可选的,所述除法转换运算函数包括目标初值算式和预设级数的牛顿迭代公式,所述目标初值算式的输出是所述预设级数的牛顿迭代公式的输入。
可选的,所述装置还包括:
第二获取模块,用于获取初始初值算式,其中,所述初始初值算式中的初始卡马克数的指数部分根据第一初值与第一真值的第一相对误差确定,所述第一初值是任意数值代入所述初始初值算式的得数,所述第一真值是所述任意数值代入所述除法转换运算函数对应的除法算式的得数;
确定模块,用于对于预设数值范围内的每个数值,确定所述每个数值的第二初值与第二真值的第二相对误差,其中,所述第二初值是所述每个数值代入所述初始初值算式的得数,所述第二真值是所述每个数值代入所述除法转换运算函数对应的除法算式的得数;在所述预设数值范围内的数值中,确定对应的第二相对误差最大的目标数值;
调整模块,用于基于所述目标数值,调整所述初始尾数部分,得到包含由所述指数部分和调整得到的目标尾数部分组成的目标卡马克数的所述目标初值算式,其中,所述目标数值代入所述目标初值算式的得数与所述目标数值对应的第二真值的第三相对误差小于所述目标数值对应的第二相对误差。
可选的,所述除法转换运算函数为倒数转换运算函数;
所述目标初值算式为0x7f000fe1-x0,其中,0x7f000fe1为所述目标卡马克数,x0为所述除法转换运算函数的输入数值。
可选的,所述图像识别模型中包括至少一种算式类型信息对应的除法转换运算函数。
可选的,所述识别模块,用于将所述目标图像输入所述图像识别模型,当所述图像识别模型调用目标除法运算函数时,所述图像识别模型执行以下步骤:
获取所述目标除法运算函数的算式类型信息;
基于预先存储的算式类型信息与除法转换运算函数的对应关系,确定所述目标除法运算函数的算式类型信息对应的目标除法转换运算函数;
将所述目标除法运算函数的输入数值,输入到所述目标除法转换运算函数中,将所述目标除法转换运算函数的运算结果确定为所述目标除法运算函数的运算结果;基于所述目标除法运算函数的运算结果,确定所述目标图像的所述图像识别结果。
第三方面,提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第一方面所述的图像识别的方法。
第四方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第一方面所述的图像识别的方法。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例中,电子设备在基于图像识别模型对目标图像进行图像识别处理时,可以根据除法转换运算函数来实现除法运算,可以避免通过处理器自带的除法指令进行运算,提高运算效率,可以提高识别图像的实时性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种图像识别的方法流程图;
图2是本发明实施例提供的一种行车记录仪的显示示意图;
图3是本发明实施例提供的一种确定目标图像的图像识别结果的方法流程图;
图4是本发明实施例提供的一种除法运算耗时对比示意图;
图5是本发明实施例提供的一种确定除法转换运算函数的方法流程图;
图6是本发明实施例提供的一种卡马克数的指数部分验证示意图;
图7是本发明实施例提供的一种尾数部分遍历示意图;
图8是本发明实施例提供的一种图像识别的装置示意图;
图9是本发明实施例提供的一种图像识别的装置示意图;
图10是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提供了一种图像识别的方法,该方法可以由电子设备实现。其中,该电子设备可以是行车记录仪等。
电子设备可以包括处理器、存储器、收发器等部件。处理器,可以为CPU(CentralProcessing Unit,中央处理单元)等,可以用于获取摄像设备采集的目标图像、对目标图像进行图像识别等处理。存储器,可以为RAM(Random Access Memory,随机存取存储器),Flash(闪存)等,可以用于存储接收到的数据、处理过程所需的数据、处理过程中生成的数据等,如目标图像、图像识别模型、除法转换运算函数等。收发器,可以用于与其它电子设备(如摄像设备)进行数据传输,收发器可以包括天线、匹配电路、调制解调器等。
如图1所示,该方法的处理流程可以包括如下的步骤:
在步骤101中,电子设备获取摄像设备当前采集的目标图像。
在一种可能的实施方式中,电子设备上可以安装有摄像设备,摄像设备可以用于采集拍摄范围内的图像,该图像可以是视频图像或者抓拍的图像。例如,电子设备可以是行车记录仪,可以拍摄车辆前方的图像,该图像中可以包括前方车辆、行人或障碍物等。进而,在摄像设备采集图像的过程中,电子设备可以获取到当前采集的目标图像。
当然,该电子设备也可以和摄像设备相互独立,电子设备上没有安装摄像设备,但可以和至少一个摄像设备进行数据传输,获取摄像设备当前采集的目标图像,此处不作限定。
在步骤102中,电子设备将目标图像输入预设的图像识别模型,输出得到目标图像的图像识别结果。
其中,电子设备上可以预先存储有图像识别模型,图像识别模型中包括除法转换运算函数,除法转换运算函数可以包括减法运算和乘法运算,能够避免使用除法指令以提高运算速度。
电子设备在获取到目标图像时,可以将目标图像输入图像识别模型,通过模型中的运算后,输出即可得到目标图像的图像识别结果。图像识别结果可以显示在目标图像中,或者可以用于触发提示,该提示可以是文本提示或语音提示。如图2所示,对于上述车辆前方的图像,行车记录仪可以识别出图像中的车辆、行人或障碍物,并且可以在图像中将识别出的车辆、行人或障碍物用标记框进行标记,在此基础上,行车记录仪可以获取到前方的车辆、行人或障碍物等与本车辆的距离,以便提醒用户,提高用户驾驶的安全性。
如果以行车记录仪为例,行车记录仪在车辆行驶的过程中需要实时识别车辆前方的图像,则需要一种快速且准确的图像识别方法。在一种可能的实施方式中,行车记录仪中预先存储的图像识别模型可以是YOLO网络。由于图像识别结果可以有车辆、行人和障碍物等多种分类,图像识别模型的输出模块可以由Softmax软回归分类器构成。而Softmax软回归分类器一般会包括除法运算函数,本发明实施例中引入除法转换运算函数,将原除法运算函数转换为包含减法运算和乘法运算的除法转换运算函数。该除法转换运算函数的结果可以与原除法运算函数的结果相接近,且运算时间减少,是一种快速除法运算。
在一种可能的实施方式中,除法转换运算函数可以是浮点除法转换运算函数,能够保证运算结果的精度,提高图像识别的准确性。由于在工程中,倒数运算较为基础,使用频率较大,本发明实施例以倒数转换运算函数为例,倒数转换运算函数在代码中的体现可以如下:
从上述代码可以看出,除法转换运算函数中可以包括目标初值算式(initialguess)和预设级数的牛顿迭代公式(Newton step),并且目标初值算式的输出可以是预设级数的牛顿迭代公式的输入。
若将x0作为除法转换运算函数的输入数值,则目标初值算式可以是0x7f000fe1-x0,根据该算式可以计算得到牛顿迭代的初值。0x7f000fe1即为倒数转换运算函数对应的目标卡马克数,其它除法转换运算函数的卡马克数可以不同。牛顿迭代可以利用方程的泰勒级数确定迭代变量,不断利用迭代变量的旧值递推新值,以此求解方程。本发明实施例中介绍的目标初值算式即为一种迭代变量。卡马克数是目标初值算式中的常数(MagicNumber,魔数),可以使得牛顿迭代的初值与根据对应的除法运算得到的运算结果的真值较为接近,能够大量减少牛顿迭代次数,减少运算时间,提高运算效率。
若将y作为牛顿迭代公式的输出数值,则根据上述代码可知y=x*(2-x0*x)。并且,除法转换运算函数中可以包括n级牛顿迭代公式,n为上述预设级数,也即除法转换运算函数中的牛顿迭代次数为n。从上述代码可以看出,第一级牛顿迭代公式的输入可以是上述牛顿迭代的初值,后续每一级牛顿迭代公式的输入可以是上一级牛顿迭代公式的输出,最后一级牛顿迭代公式输出得到除法转换运算函数的运算结果。通过实验得知,该除法转换运算函数的运算结果与运算结果的真值的相对误差较小,虽然运算结果是一种近似值,但在保证精度需求的情况下,该除法转换运算函数仍然可以应用在工程中进行对应的除法运算。
从上述代码可以看出,上述倒数转换运算函数中牛顿迭代次数为3,通过实验得知,经过3次牛顿迭代可以至少保证6位有效数字的精度。在另一种可能的实施方式中,倒数转换运算函数中牛顿迭代次数还可以为2,在代码中的体现可以如下:
通过实验得知,经过2次牛顿迭代可以至少保证5位有效数字的精度。技术人员可以根据需求选取合适的倒数转换运算函数,例如,由于上述第二个倒数转换运算函数比第一个倒数转换运算函数的指令少,运算速度较快,因此可以选取上述第二个倒数转换运算函数应用在对精度要求较低、运算速度较高的场景中。
上述图像识别模型中可能包括不止一个算式类型的除法运算函数,如平方倒数运算函数、立方倒数运算函数等,每种算式类型的除法运算函数都可以具有对应的除法转换运算函数。因此,步骤102的相应处理可以分为如图3所示步骤1021-1024,下面对步骤1021-1024进行介绍:
在步骤1021中,电子设备将目标图像输入预设的图像识别模型,当图像识别模型调用目标除法运算函数时,获取目标除法运算函数的算式类型信息。
电子设备在通过图像识别模型进行图像识别处理的过程中,可能会在多处的处理中需要调用除法运算函数进行运算,该除法运算函数可以是处理器的自带函数,运算时间较长。每当需要调用目标除法运算函数时,电子设备可以获知该目标除法运算函数的算式类型信息,例如,电子设备可以从该目标除法运算函数的函数名中获知算式类型信息。
在步骤1022中,电子设备基于预先存储的算式类型信息与除法转换运算函数的对应关系,确定目标除法运算函数的算式类型信息对应的目标除法转换运算函数。
电子设备中可以预先存储有各个除法运算函数对应的除法转换运算函数,以便在调用的过程中基于除法转换运算函数进行运算。在上述过程中,当电子设备调用目标除法运算函数,可以通过目标除法运算函数的算式类型信息与目标除法转换运算函数的对应关系,映射到目标除法转换运算函数上,将原目标除法运算函数的输入数值,作为目标除法转换运算函数的输入。
在步骤1023中,电子设备将目标除法运算函数的输入数值,输入到目标除法转换运算函数中,得到目标除法运算函数的运算结果。
电子设备将原目标除法运算函数的输入数值,作为目标除法转换运算函数的输入后,可以通过目标除法转换运算函数的运算逻辑对输入数值进行运算,得到的运算结果可以作为原目标除法运算函数的运算结果。例如,当目标除法运算函数为倒数运算函数时,可以将输入数值通过上面介绍的任一种代码进行运算,得到的运算结果可以作为该输入数值的倒数。
在步骤1024中,电子设备基于目标除法运算函数的运算结果,确定目标图像的图像识别结果。
除法运算仅仅是电子设备进行图像识别处理的一个部分,可以与其它运算处理相结合,共同实现图像识别处理。电子设备在得到目标除法运算函数的运算结果后,可以将该运算结果代入后续的处理中,最终得到目标图像的图像识别结果。例如,在Softmax软回归分类器中,可以通过倒数运算函数与其它运算函数相结合,计算得到物体图像属于“车辆”、“行人”等分类的概率,进而,可以根据每个分类的概率确定最终的图像识别结果。
上述步骤1021-1024是在实际进行图像识别处理的过程中,实时将原目标除法运算函数映射到目标除法转换运算函数的一种实施方式。在另一种可能的实施方式中,还可以在图像识别处理之前,获取图像识别模型中的各个除法运算函数,相应的替换为对应的除法转换运算函数,在实际进行图像识别处理的过程中,直接调用除法转换运算函数,而不进行实时映射,提高运算效率。
硬件除法单元可以达到较快的运算速度,但是硬件除法单元占用的面积一般比较大,制作成本也比较高,大多数电子设备上可能都无法安装硬件除法单元,硬件除法单元的使用具有一定的局限性。如图4所示的除法运算耗时对比示意图,图中所示的“高精度除法”是指通过上述牛顿迭代次数为3的倒数转换运算函数进行除法运算的耗时,“低精度除法”是指通过上述牛顿迭代次数为2的倒数转换运算函数进行除法运算的耗时,“硬件除法单元”是指通过硬件除法单元进行除法运算的耗时。由图4可以看出,本发明实施例提供的除法转换运算函数与硬件除法单元的耗时相差较小,并且,当牛顿迭代次数为2时,除法转换运算函数可以达到与硬件除法单元的耗时几乎相同的耗时。而除法转换运算函数可以由代码实现,可移植性高,与硬件除法单元相比适用范围较广。
上述过程中介绍的除法转换运算函数还可以应用在更多的领域中,用于替换对应的除法运算,以实现提高运算效率的目的。
本发明实施例中,电子设备在基于图像识别模型对目标图像进行图像识别处理时,可以根据除法转换运算函数来实现除法运算,可以避免通过处理器自带的除法指令进行运算,提高运算效率,可以提高识别图像的实时性。
下面将结合图5所示的确定除法转换运算函数的方法流程图,对确定除法转换运算函数的方法进行介绍:
电子设备通过上述图像识别模型图像识别处理之前,技术人员可以在其它电子设备上确定上述除法转换运算函数,例如,可以在计算机设备中,通过分析实验数据等,确定除法转换运算函数。
在步骤501中,确定牛顿迭代公式。
技术人员可以根据下述公式(1)确定除法转换运算函数中的牛顿迭代公式,公式(1)是牛顿迭代的原始公式:
yn+1=yn(2-ynx) (2)
根据公式(2),技术人员可以将除法转换运算函数中的牛顿迭代公式设计为y=x*(2-x0*x)。
在步骤502中,确定初始初值算式。
对每个数值进行除法运算时,如果每个数值的牛顿迭代公式的初值是固定的,那么除法运算的运算结果也将固定,因此在设计初始初值公式时需要考虑具体的输入数值的影响,则可以将初始初值算式设计为R+A*x0。其中,R为卡马克数,是一个常数;A为输入数值的系数,是输入数值的影响因子。
在一种可能的实施方式中,由步骤501中确定下的牛顿迭代公式,可以得到A的一种可能的取值,以倒数运算函数为例,可以由上述公式(2),得到A的一种可能的取值可以为-1,因此初始初值算式可以设计为R-x0。
另一种可能的实施方式中,还可以将A设置为任意取值,例如,可以将A设置为-0.5。
无论采用上述何种实施方式确定A的取值,后续过程中都可以通过步骤503确定输入的任意数值的初值的第一相对误差与该任意数值是否相关,如果相关,则需要对A的取值进行调整。
在步骤503中,根据初始初值算式,确定输入的任意数值的第一初值与第一真值的第一相对误差。
其中,第一初值是任意数值代入初始初值算式的得数,第一真值是任意数值代入除法转换运算函数对应的除法算式的得数。
在一种可能的实施方式中,除法转换运算函数可以是浮点除法转换运算函数。任意的浮点数都可以由下述公式(3)表示:
x=(-1)s(1+M)2E-127 (3)
其中,x为该浮点数,s为该浮点数的符号位(s=0为正数,s=1为负数),E为该浮点数的指数部分,M为该浮点数的尾数部分。
设输入的任意数值为正数x0,则根据公式(3)可得x0=(1+M)2E-127,x0对应的第一真值为再设E为偶数,则E-127为奇数。由于x0为任意数值,可以设E-127=2d+1,则上述卡马克数R也是浮点数,并且可以为正数,则
在步骤504中,判断第一相对误差与任意数值是否相关。
显然,如果A的取值为-1,则第一相对误差中可以将变量d约去;如果A的取值为-0.5,则第一相对误差中的变量d不能约去。由于尾数部分的取值可以在0~1之间,后续处理中可以基于放缩法将R2和M约去,则如果第一相对误差中存在变量d,可以认为第一相对误差与任意数值有关。而工程中一般期望将第一相对误差控制在一定的范围内,如果第一相对误差与任意数值有关,则不能满足需求,因此需要设计一个合适的初始初值算式,使得第一相对误差与任意数值无关。
当判断出第一相对误差与任意数值有关时,需要回到步骤503,对初始初值算式重新进行设计。不难看出,第一相对误差中变量d的系数等于-2时,即可将变量d约去,也即A的取值为-1。
当判断出第一相对误差与任意数值无关时,可以进行步骤505的处理。上述步骤503-504中基于E为偶数进行推导,由于第一相对误差与任意数值无关,也即当E为奇数时,第一相对误差也可以控制在一定的范围内,满足工程需求。因此,在步骤504中判断出第一相对误差与任意数值无关后,可以不再基于E为奇数进行推导,当然,可以基于E为奇数对初值算式进行验证,求证第一相对误差是否与任意数值无关。实践过程表明,无论E是偶数还是奇数,第一相对误差都与任意数值无关,提高了除法运算的准确性。
在步骤505中,确定卡马克数的指数部分。
步骤504中得到与任意数值无关的第一相对误差时,可以令第一相对误差小于预设范围,例如,可以令第一相对误差小于也即基于放缩法可以将不等式简化为由于R1为整数,则可以得到R1=254,转换为十六进制并向右位移1位得到0x7f,也即得到了初始卡马克数的指数部分。
如图6所示的卡马克数的指数部分验证示意图,以x0=0.1作为初始初值算式的输入数值,确定第一初值,而x0=0.1的第一真值为10,由图中可以看出,当指数部分为0x7f(即十进制的127)时,第一初值与第一真值最为接近,可以验证指数部分为0x7f是一种合适的取值。
在步骤506中,对于预设数值范围内的每个数值,确定每个数值的第二初值与第二真值的第二相对误差。
其中,第二初值是每个数值代入初始初值算式的得数,第二真值是每个数值代入除法转换运算函数对应的除法算式的得数,第二真值可以是预设得数。
步骤505中确定下卡马克数的指数部分为0x7f,可以设置初始卡马克数为0x7f000000,作为初始初值算式中的卡马克数。技术人员可以设置预设数值范围,并且可以借助计算机设备,遍历其中预设精度的每个数值,求取第二相对误差,第二相对误差具体计算过程与上述第一相对误差相类似,此处不再赘述。例如,预设精度为0.1,则可以在预设数值范围(0.0,1.0)中遍历0.1~0.9,每个数值的第二真值可以是预设的,如0.1的第二真值为10。
在步骤507中,在预设数值范围内的数值中,确定对应的第二相对误差最大的目标数值。
根据步骤506中的实验结果可以得到,0.1对应的第二相对误差最大,则可以将0.1选取出来,作为后续对卡马克数的尾数部分进行调整的参考输入数值。
在步骤508中,基于目标数值,调整初始尾数部分,得到包含由指数部分和调整得到的目标尾数部分组成的目标卡马克数的目标初值算式。
其中,目标数值代入目标初值算式的得数与目标数值对应的第二真值的第三相对误差小于目标数值对应的第二相对误差。
初始卡马克数为0x7f000000,则初始尾数部分可以为0x000000,一共6位尾数。可以借助计算机设备,从高位开始依次向低位,每一位遍历0~f共计16个数,对于每个卡马克数构成的初值算式,将目标数值0.1作为每个初值算式的输入数值,计算对应的第三相对误差,第三相对误差具体计算过程与上述第一相对误差相类似,此处不再赘述。对于尾数部分每一位的取值,可以确定第三相对误差最小的目标取值,当每一位尾数都选取出目标取值后,即可得到目标尾数部分。进而,计算机设备可以输出目标初值算式,该目标初值算式可以包含由指数部分和目标尾数部分组成的目标卡马克数。
在一种可能的实施方式中,如图7所示的尾数部分遍历示意图,由于高位尾数对卡马克数的影响较大,可以逐个遍历高三位的尾数,而低三位的尾数可以结合遍历,也即根据000~fff进行遍历。从而,可以提高开发效率。
本发明实施例中,可以根据相对误差与任意数值是否相关,确定合适的卡马克数的指数部分和初值算式,并且,选取相对误差较大的目标数值来调整卡马克数的尾数部分,简化开发过程,确定下的除法转换运算函数适用于工程运算中,提高了开发效率。
基于相同的技术构思,本发明实施例还提供了一种图像识别的装置,该装置可以是上述实施例的电子设备。如图8所示,该装置包括:
第一获取模块810,用于获取摄像设备当前采集的目标图像;
识别模块820,用于将所述目标图像输入预设的图像识别模型,输出得到所述目标图像的图像识别结果;其中,所述图像识别模型中包括除法转换运算函数,所述除法转换运算函数包括减法运算和乘法运算。
其中,所述图像识别模型可以作为识别模块820内部的一个子处理单元,也可以作为识别模块820外部的一个子处理单元,当识别模块开始执行目标图像的图像识别时,可通过调用这个子处理单元来实现目标图像的图像识别,当图像识别模型中的图像识别算法运行任一除法运算函数时,可用该除法运算函数关联的除法转换运算函数来替代,以达到提升图像识别算法的运行效率的目的。
可选的,所述除法转换运算函数为浮点除法转换运算函数。
可选的,所述除法转换运算函数包括目标初值算式和预设级数的牛顿迭代公式,所述目标初值算式的输出是所述预设级数的牛顿迭代公式的输入。
可选的,如图9所示,所述装置还包括:
第二获取模块830,用于获取初始初值算式,其中,所述初始初值算式中的初始卡马克数的指数部分根据第一初值与第一真值的第一相对误差确定,所述第一初值是任意数值代入所述初始初值算式的得数,所述第一真值是所述任意数值代入所述除法转换运算函数对应的除法算式的得数;
确定模块840,用于对于预设数值范围内的每个数值,确定所述每个数值的第二初值与第二真值的第二相对误差,其中,所述第二初值是所述每个数值代入所述初始初值算式的得数,所述第二真值是所述每个数值代入所述除法转换运算函数对应的除法算式的得数;在所述预设数值范围内的数值中,确定对应的第二相对误差最大的目标数值;
调整模块850,用于基于所述目标数值,调整所述初始尾数部分,得到包含由所述指数部分和调整得到的目标尾数部分组成的目标卡马克数的所述目标初值算式,其中,所述目标数值代入所述目标初值算式的得数与所述目标数值对应的第二真值的第三相对误差小于所述目标数值对应的第二相对误差。
可选的,所述除法转换运算函数为倒数转换运算函数;
所述目标初值算式为0x7f000fe1-x0,其中,0x7f000fe1为所述目标卡马克数,x0为所述除法转换运算函数的输入数值。
可选的,所述图像识别模型中包括至少一种算式类型信息对应的除法转换运算函数。
所述识别模块820,用于将所述目标图像输入所述图像识别模型,当所述图像识别模型调用目标除法运算函数时,所述图像识别模型执行以下步骤:
获取所述目标除法运算函数的算式类型信息;
基于预先存储的算式类型信息与除法转换运算函数的对应关系,确定所述目标除法运算函数的算式类型信息对应的目标除法转换运算函数;
将所述目标除法运算函数的输入数值,输入到所述目标除法转换运算函数中,将所述目标除法转换运算函数的运算结果确定为所述目标除法运算函数的运算结果;基于所述目标除法运算函数的运算结果,确定所述目标图像的所述图像识别结果。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本发明实施例中,电子设备在基于图像识别模型对目标图像进行图像识别处理时,可以根据除法转换运算函数来实现除法运算,可以避免通过处理器自带的除法指令进行运算,提高运算效率,可以提高识别图像的实时性。
需要说明的是:上述实施例提供的图像识别的装置在图像识别时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将电子设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的图像识别的装置与图像识别的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图10是本发明实施例提供的一种电子设备的结构示意图,该电子设备1000可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessing units,CPU)1001和一个或一个以上的存储器1002,其中,所述存储器1002中存储有至少一条指令,所述至少一条指令由所述处理器1001加载并执行以实现下述问题的解决方案确定方法的方法步骤:
获取摄像设备当前采集的目标图像;
将所述目标图像输入预设的图像识别模型,输出得到所述目标图像的图像识别结果;
其中,所述图像识别模型中包括除法转换运算函数,所述除法转换运算函数包括减法运算和乘法运算。
可选的,所述除法转换运算函数为浮点除法转换运算函数。
可选的,所述除法转换运算函数包括目标初值算式和预设级数的牛顿迭代公式,所述目标初值算式的输出是所述预设级数的牛顿迭代公式的输入。
可选的,所述至少一条指令由所述处理器1001加载并执行以实现下述方法步骤:
获取初始初值算式,其中,所述初始初值算式中的初始卡马克数的指数部分根据第一初值与第一真值的第一相对误差确定,所述第一初值是任意数值代入所述初始初值算式的得数,所述第一真值是所述任意数值代入所述除法转换运算函数对应的除法算式的得数;
对于预设数值范围内的每个数值,确定所述每个数值的第二初值与第二真值的第二相对误差,其中,所述第二初值是所述每个数值代入所述初始初值算式的得数,所述第二真值是所述每个数值代入所述除法转换运算函数对应的除法算式的得数;
在所述预设数值范围内的数值中,确定对应的第二相对误差最大的目标数值;
基于所述目标数值,调整所述初始尾数部分,得到包含由所述指数部分和调整得到的目标尾数部分组成的目标卡马克数的所述目标初值算式,其中,所述目标数值代入所述目标初值算式的得数与所述目标数值对应的第二真值的第三相对误差小于所述目标数值对应的第二相对误差。
可选的,所述除法转换运算函数为倒数转换运算函数;
所述目标初值算式为0x7f000fe1-x0,其中,0x7f000fe1为所述目标卡马克数,x0为所述除法转换运算函数的输入数值。
可选的,所述图像识别模型中包括至少一种算式类型信息对应的除法转换运算函数;
所述至少一条指令由所述处理器1001加载并执行以实现下述方法步骤:
将所述目标图像输入预设的图像识别模型,当调用目标算式类型信息对应的目标除法转换运算函数时,基于所述目标除法转换运算函数,确定所述目标算式类型信息的目标除法运算的运算结果;
基于所述运算结果,确定所述目标图像的图像识别结果。
本发明实施例中,电子设备在基于图像识别模型对目标图像进行图像识别处理时,可以根据除法转换运算函数来实现除法运算,可以避免通过处理器自带的除法指令进行运算,提高运算效率,可以提高识别图像的实时性。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种图像识别的方法,其特征在于,所述方法包括:
获取初始初值算式,其中,所述初始初值算式中的初始卡马克数的指数部分根据第一初值与第一真值的第一相对误差确定,所述第一初值是任意数值代入所述初始初值算式的得数,所述第一真值是所述任意数值代入除法转换运算函数对应的除法算式的得数;
对于预设数值范围内的每个数值,确定所述每个数值的第二初值与第二真值的第二相对误差,其中,所述第二初值是所述每个数值代入所述初始初值算式的得数,所述第二真值是所述每个数值代入所述除法转换运算函数对应的除法算式的得数;
在所述预设数值范围内的数值中,确定对应的第二相对误差最大的目标数值;
基于所述目标数值,调整初始尾数部分,得到包含由所述指数部分和调整得到的目标尾数部分组成的目标卡马克数的目标初值算式,其中,所述目标数值代入所述目标初值算式的得数与所述目标数值对应的第二真值的第三相对误差小于所述目标数值对应的第二相对误差;
获取摄像设备当前采集的目标图像;
将所述目标图像输入预设的图像识别模型,输出得到所述目标图像的图像识别结果;
其中,所述图像识别模型中包括除法转换运算函数,所述除法转换运算函数包括所述目标初值算式和预设级数的牛顿迭代公式,所述目标初值算式的输出是所述预设级数的牛顿迭代公式的输入。
2.根据权利要求1所述的方法,其特征在于,所述除法转换运算函数为浮点除法转换运算函数。
3.根据权利要求1所述的方法,其特征在于,所述除法转换运算函数为倒数转换运算函数;
所述目标初值算式为0x7f000fe1-x0,其中,0x7f000fe1为所述目标卡马克数,x0为所述除法转换运算函数的输入数值。
4.根据权利要求1所述的方法,其特征在于,所述图像识别模型中包括至少一种算式类型信息对应的除法转换运算函数。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述将所述目标图像输入预设的图像识别模型,输出得到所述目标图像的图像识别结果,包括:
将所述目标图像输入所述图像识别模型,当所述图像识别模型调用目标除法运算函数时,所述图像识别模型执行以下步骤:
获取所述目标除法运算函数的算式类型信息;
基于预先存储的算式类型信息与除法转换运算函数的对应关系,确定所述目标除法运算函数的算式类型信息对应的目标除法转换运算函数;
将所述目标除法运算函数的输入数值,输入到所述目标除法转换运算函数中,将所述目标除法转换运算函数的运算结果确定为所述目标除法运算函数的运算结果;基于所述目标除法运算函数的运算结果,确定所述目标图像的所述图像识别结果。
6.一种图像识别的装置,其特征在于,所述装置包括:
第二获取模块,用于获取初始初值算式,其中,所述初始初值算式中的初始卡马克数的指数部分根据第一初值与第一真值的第一相对误差确定,所述第一初值是任意数值代入所述初始初值算式的得数,所述第一真值是所述任意数值代入除法转换运算函数对应的除法算式的得数;
确定模块,用于对于预设数值范围内的每个数值,确定所述每个数值的第二初值与第二真值的第二相对误差,其中,所述第二初值是所述每个数值代入所述初始初值算式的得数,所述第二真值是所述每个数值代入所述除法转换运算函数对应的除法算式的得数;在所述预设数值范围内的数值中,确定对应的第二相对误差最大的目标数值;
调整模块,用于基于所述目标数值,调整初始尾数部分,得到包含由所述指数部分和调整得到的目标尾数部分组成的目标卡马克数的目标初值算式,其中,所述目标数值代入所述目标初值算式的得数与所述目标数值对应的第二真值的第三相对误差小于所述目标数值对应的第二相对误差;
第一获取模块,用于获取摄像设备当前采集的目标图像;
识别模块,用于将所述目标图像输入预设的图像识别模型,输出得到所述目标图像的图像识别结果;
其中,所述图像识别模型中包括除法转换运算函数,所述除法转换运算函数包括所述目标初值算式和预设级数的牛顿迭代公式,所述目标初值算式的输出是所述预设级数的牛顿迭代公式的输入。
7.根据权利要求6所述的装置,其特征在于,所述除法转换运算函数为浮点除法转换运算函数。
8.根据权利要求6所述的装置,其特征在于,所述除法转换运算函数为倒数转换运算函数;
所述目标初值算式为0x7f000fe1-x0,其中,0x7f000fe1为所述目标卡马克数,x0为所述除法转换运算函数的输入数值。
9.根据权利要求6所述的装置,其特征在于,所述图像识别模型中包括至少一种算式类型信息对应的除法转换运算函数。
10.根据权利要求6-9任一项所述的装置,其特征在于,所述识别模块,用于将所述目标图像输入所述图像识别模型,当所述图像识别模型调用目标除法运算函数时,所述图像识别模型执行以下步骤:
获取所述目标除法运算函数的算式类型信息;
基于预先存储的算式类型信息与除法转换运算函数的对应关系,确定所述目标除法运算函数的算式类型信息对应的目标除法转换运算函数;
将所述目标除法运算函数的输入数值,输入到所述目标除法转换运算函数中,将所述目标除法转换运算函数的运算结果确定为所述目标除法运算函数的运算结果;基于所述目标除法运算函数的运算结果,确定所述目标图像的所述图像识别结果。
11.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至5任一所述的图像识别的方法。
12.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至5任一所述的图像识别的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810846274.0A CN110765821B (zh) | 2018-07-27 | 2018-07-27 | 图像识别的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810846274.0A CN110765821B (zh) | 2018-07-27 | 2018-07-27 | 图像识别的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110765821A CN110765821A (zh) | 2020-02-07 |
CN110765821B true CN110765821B (zh) | 2022-08-16 |
Family
ID=69328055
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810846274.0A Active CN110765821B (zh) | 2018-07-27 | 2018-07-27 | 图像识别的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110765821B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108292241A (zh) * | 2015-10-28 | 2018-07-17 | 谷歌有限责任公司 | 处理计算图 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8391615B2 (en) * | 2008-12-02 | 2013-03-05 | Intel Corporation | Image recognition algorithm, method of identifying a target image using same, and method of selecting data for transmission to a portable electronic device |
-
2018
- 2018-07-27 CN CN201810846274.0A patent/CN110765821B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108292241A (zh) * | 2015-10-28 | 2018-07-17 | 谷歌有限责任公司 | 处理计算图 |
Non-Patent Citations (2)
Title |
---|
softmax多分类回归模型;随心1993;《CSDN》;20180422;第1-2页 * |
卡马克快速平方根(平方根倒数)算法;xuexiaokkk;《CSDN》;20151103;第1-3页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110765821A (zh) | 2020-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10929746B2 (en) | Low-power hardware acceleration method and system for convolution neural network computation | |
CN106990937B (zh) | 一种浮点数处理装置和处理方法 | |
Kim et al. | Zero-centered fixed-point quantization with iterative retraining for deep convolutional neural network-based object detectors | |
CN108875487B (zh) | 行人重识别网络的训练及基于其的行人重识别 | |
CN110910422A (zh) | 目标跟踪方法、装置、电子设备和可读存储介质 | |
CN114139693A (zh) | 神经网络模型的数据处理方法、介质和电子设备 | |
CN111936965A (zh) | 随机舍入逻辑 | |
Vasyltsov et al. | Efficient softmax approximation for deep neural networks with attention mechanism | |
US20220076107A1 (en) | Neural network processing device, data processing method and device | |
CN108520532B (zh) | 识别视频中物体运动方向的方法及装置 | |
CN102378960B (zh) | 半导体集成电路和指数计算方法 | |
CN110765821B (zh) | 图像识别的方法及装置 | |
CN111695515B (zh) | 视频图像的检测方法、装置、电子设备及存储介质 | |
CN116129101A (zh) | 目标检测方法、装置、电子设备及存储介质 | |
CN116700664B (zh) | 一种确定浮点数平方根的方法及装置 | |
CN116432608A (zh) | 基于人工智能的文本生成方法、装置、计算机设备及介质 | |
Schlessman et al. | Tailoring design for embedded computer vision applications | |
CN111444319B (zh) | 文本匹配方法、装置和电子设备 | |
KR20230097540A (ko) | 물체 경계 예측 불확실성 및 강조 신경망을 이용한 물체 검출 장치 및 방법 | |
US11861452B1 (en) | Quantized softmax layer for neural networks | |
Boudabous et al. | HW/SW design and FPGA implementation of The GCM for an efficient text extraction from complex images | |
US20210150334A1 (en) | Machine learning with input data domain transformation | |
CN112651484A (zh) | 图像处理方法、装置、电子设备和计算机可读存储介质 | |
CN112084874A (zh) | 一种物体检测方法、装置及终端设备 | |
Adiono et al. | An architecture design of SAD based template matching for fast queue counter in FPGA |
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 |