CN108109135A - 一种获取图像灰度级分布的方法及装置 - Google Patents
一种获取图像灰度级分布的方法及装置 Download PDFInfo
- Publication number
- CN108109135A CN108109135A CN201711278148.1A CN201711278148A CN108109135A CN 108109135 A CN108109135 A CN 108109135A CN 201711278148 A CN201711278148 A CN 201711278148A CN 108109135 A CN108109135 A CN 108109135A
- Authority
- CN
- China
- Prior art keywords
- values
- gray level
- variable
- described image
- value
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 108010001267 Protein Subunits Proteins 0.000 claims description 4
- 239000004744 fabric Substances 0.000 claims description 3
- 238000002059 diagnostic imaging Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003745 diagnosis Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000003902 lesion Effects 0.000 description 1
- 238000010422 painting Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0012—Biomedical image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/40—Analysis of texture
- G06T7/41—Analysis of texture based on statistical description of texture
- G06T7/44—Analysis of texture based on statistical description of texture using image operators, e.g. filters, edge density metrics or local histograms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30004—Biomedical image processing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Radiology & Medical Imaging (AREA)
- Quality & Reliability (AREA)
- Probability & Statistics with Applications (AREA)
- Facsimile Image Signal Circuits (AREA)
Abstract
本发明属于医疗影像图像处理领域,具体涉及一种获取图像灰度级分布的方法及装置。该方法包括以下步骤:读取图像的图像数据;根据所述图像数据,获取图像的灰度级最大值与灰度级最小值,进而确定图像的灰度级范围;根据图像的灰度级范围,确定灰度级分布数组的长度;根据图像数据、灰度级分布数组,统计得出与所述图像的灰度级范围内的每个灰度级相对应的在所述灰度级分布数组中的数据元素的最终值。本发明实施例的方法,可用于获取图像灰度级的分布,进而可以制作出相应的灰度直方图,该方法不需要定义一个变长的灰度级分布数组,其可以提高计算所述图像的灰度级范围内的每个灰度级在所述图像中存在的像素个数的效率。
Description
技术领域
本发明属于医疗影像图像处理领域,具体涉及一种获取图像灰度级分布的方法及装置。
背景技术
影像归档与通信系统(PACS,Picture Archiving and Communication Systems),是应用在医院影像科的核心系统,主要任务就是把各种医学影像以数字化的方式保存并呈现出来。而PACS系统中的医疗影像浏览器主要就是用来显示各种医学影像,同时带有一些辅助医生诊断的功能。
医疗影像中大多是灰度图像。用灰度表示的图像称作灰度图像,灰度图像的灰度是黑白图像中的颜色深度,分为256阶,范围一般为0-255。灰度直方图是关于图像灰度级分布的统计,其与对应的灰度图像一起呈现在PACS系统中,可以直观的反映出该图像中某种灰度出现的频率,以帮助影像科医生进行辅助判断该图像反应的部位是否有某种病灶。灰度直方图的横坐标是灰度级,纵坐标是该灰度级出现的频率。
制作灰度直方图的前提是先统计灰度图像的灰度级在该图像中出现的频率。现有技术中,统计灰度图像的灰度级在该图像中出现的频率的方法中,通常需要定义一个变长的灰度级分布数组,这使得分布数组的长度是动态计算的,进而导致该方法效率较低。
发明内容
为了解决上述技术问题,本发明提供了种获取图像灰度级分布的方法及装置,其可用于获取图像灰度级的分布,进而可以制作出相应的灰度直方图,该方法不需要定义一个变长的灰度级分布数组,可以提高计算所述图像的灰度级范围内的每个灰度级在所述图像中存在的像素个数的效率。
本发明提供如下技术方案:
一方面,本发明实施例中提供一种获取图像灰度级分布的方法,其包括以下步骤:
读取图像的图像数据,所述图像数据包括该图像中的每个像素的R值、G值、B值、A值,且所述图像数据中的数据元素是按照每个像素的R值、G值、B值、A值的顺序进行排列;
根据所述图像数据,获取所述图像的灰度级最大值与灰度级最小值,进而确定所述图像的灰度级范围;所述图像的灰度级范围包括所述灰度级最小值、所述灰度级最大值、所述灰度级最大值与所述灰度级最小值之间的灰度级;
根据所述图像的灰度级范围,确定灰度级分布数组的长度;所述灰度级分布数组是统计所述图像的灰度级范围内的每个灰度级在所述图像中存在的像素个数的分布数组,该灰度级分布数组包括若干个数据元素,所述确定灰度级分布数组的长度,是使所述灰度级分布数组中的数据元素的个数等于所述图像的灰度级范围内的灰度级的个数;所述图像的灰度级范围内的每个灰度级在所述灰度级分布数组中都有一个数据元素与其相对应,且该灰度级分布数组中的数据元素的最终值为与其对应的灰度级在所述图像中存在的像素个数;
根据所述图像数据、所述灰度级分布数组,统计得出与所述图像的灰度级范围内的每个灰度级相对应的在所述灰度级分布数组中的数据元素的最终值。
另一方面,本发明实施例中还提供了一种获取图像灰度级分布的装置,其包括:
读取模块,用于读取图像的图像数据,所述图像数据包括该图像中的每个像素的R值、G值、B值、A值,且所述图像数据中的数据元素是按照每个像素的R值、G值、B值、A值的顺序进行排列;
获取模块,用于根据所述图像数据,获取所述图像的灰度级最大值与灰度级最小值,进而确定所述图像的灰度级范围;所述图像的灰度级范围包括所述灰度级最小值、所述灰度级最大值、所述灰度级最大值与所述灰度级最小值之间的灰度级;
确定模块,用于根据所述图像的灰度级范围,确定灰度级分布数组的长度;所述灰度级分布数组是统计所述图像的灰度级范围内的每个灰度级在所述图像中存在的像素个数的分布数组,该灰度级分布数组包括若干个数据元素,所述确定灰度级分布数组的长度,是使所述灰度级分布数组中的数据元素的个数等于所述图像的灰度级范围内的灰度级的个数;所述图像的灰度级范围内的每个灰度级在所述灰度级分布数组中都有一个数据元素与其相对应,且该灰度级分布数组中的数据元素的最终值为与其对应的灰度级在所述图像中存在的像素个数;
统计模块,用于根据所述图像数据、所述灰度级分布数组,统计得出与所述图像的灰度级范围内的每个灰度级相对应的在所述灰度级分布数组中的数据元素的最终值。
本发明实施例中的获取图像灰度级分布的方法中,其通过获取图像的灰度级最大值与灰度级最小值,可以确定该图像的灰度级范围,进而可以确定灰度级分布数组的长度。因此,本发明实施例不需要定义一个变长的灰度级分布数组,这使得后续统计得出与所述图像的灰度级范围内的每个灰度级相对应的在所述灰度级分布数组中的数据元素的最终值的过程,不用动态计算该数组长度,因此可以提高计算所述图像的灰度级范围内的每个灰度级在所述图像中存在的像素个数的效率。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对本发明或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一优选实施例中的获取图像灰度级分布的方法的流程图。
图2为图1所示实施例中的获取图像灰度级分布的方法的部分流程图。
图3为本发明另一优选实施例中的获取图像灰度级分布的方法的流程图。
图4为图3所示实施例中得出的所述图像的灰度级范围内的灰度级以及每个灰度级在所述图像中存在的像素个数对照表。
图5为本发明另一优选实施例中的获取图像灰度级分布的方法的部分流程图。
图6为图5所示实施例中的获取所述图像的灰度级最大值与灰度级最小值的流程图。
图7为本发明一优选实施例中的获取图像灰度级分布的装置的结构框图。
图8为本发明另一优选实施例中的获取图像灰度级分布的装置的结构框图。
图9为本发明另一优选实施例中的获取图像灰度级分布的装置的结构框图。
具体实施方式
下面将结合本发明中的附图,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中的“第一”、“第二”,只是对某些特征进行区别性地称呼,这是为了方便理解设定的,并无其他方面的限定。
如图1所示的获取图像灰度级分布的方法,其包括以下步骤:
S101:读取图像的图像数据,所述图像数据包括该图像中的每个像素的R值、G值、B值、A值,且所述图像数据中的数据元素是按照每个像素的R值、G值、B值、A值的顺序进行排列。
图像中的每个像素通常都包括四方面的信息值,即为R值、G值、B值、A值;R值为像素的红色(Red)数值,G值为像素的绿色(Green)数值,B值为像素的蓝色(Blue)数值,A值为像素的透明度(Alpha)数值。本发明实施例中的图像通常是指灰度图像,即是R值、G值、B值均为0,灰度级由A值决定,即每个像素的灰度级的大小就是其A值的大小。
所述图像数据中的数据元素是按照每个像素的R值、G值、B值、A值的顺序进行排列,是指所述图像数据中每个像素数值的前3个数值分别为R值、G值、B值,最后一个数值是A值。比如:某个图像包括的相邻的8个像素,其图像数据的排序可以为:0,0,0,20,0,0,0,15,0,0,0,14,0,0,0,16,0,0,0,15,0,0,0,20,0,0,0,16,0,0,0,11,其中的20、15、14、16、15、20、16、11分别是第一像素的A值、第二像素的A值、第三像素的A值、第四像素的A值、第五像素的A值、第六像素的A值、第七像素的A值、第八像素的A值。由于R值、G值、B值均为0,这里的A值也即是对应像素的灰度级。
所述图像数据的获取可以通过系统提供的函数getImageData直接把数据从canvas(画布)上取出来。
S102:根据所述图像数据,获取所述图像的灰度级最大值与灰度级最小值,进而确定所述图像的灰度级范围;所述图像的灰度级范围包括所述灰度级最小值、所述灰度级最大值、所述灰度级最大值与所述灰度级最小值之间的灰度级。
所述获取所述图像的灰度级最大值与灰度级最小值,可以是将所述图像数据中每个像素的A值提取出来,然后将每个A值分别进行比较,进而获取所述图像的灰度级最大值与灰度级最小值。
S103:根据所述图像的灰度级范围,确定灰度级分布数组的长度;所述灰度级分布数组是统计所述图像的灰度级范围内的每个灰度级在所述图像中存在的像素个数的分布数组,该灰度级分布数组包括若干个数据元素,所述确定灰度级分布数组的长度,是使所述灰度级分布数组中的数据元素的个数等于所述图像的灰度级范围内的灰度级的个数;所述图像的灰度级范围内的每个灰度级在所述灰度级分布数组中都有一个数据元素与其相对应,且该灰度级分布数组中的数据元素的最终值为与其对应的灰度级在所述图像中存在的像素个数。
所述灰度级分布数组中的数据元素的个数等于所述图像的灰度级范围内的灰度级的个数,即所述灰度级分布数组中的数据元素的个数为所述灰度级的最大值与所述灰度级的最小值的差加1。
所述图像的灰度级范围内的每个灰度级在所述灰度级分布数组中都有一个数据元素与其相对应,通常对应规则是:所述灰度级分布数组中的起始数据元素与所述图像的灰度级范围内的所述灰度级的最小值相对应、所述灰度级分布数组中与起始数据元素相邻的数据元素与所述图像的灰度级范围内的所述灰度级的最小值加1相对应、……、所述灰度级分布数组中最后一个数据元素与所述图像的灰度级范围内的所述灰度级的最大值相对应。当然,也可以是:所述灰度级分布数组中的起始数据元素与所述图像的灰度级范围内的所述灰度级的最大值相对应、所述灰度级分布数组中与起始数据元素相邻的数据元素与所述图像的灰度级范围内的所述灰度级的最大值减1相对应、……、所述灰度级分布数组中最后一个数据元素与所述图像的灰度级范围内的所述灰度级的最小值相对应。对应规则不限于此,目的是能计算出该灰度级分布数组中的数据元素的最终值。
S104:根据所述图像数据、所述灰度级分布数组,统计得出与所述图像的灰度级范围内的每个灰度级相对应的在所述灰度级分布数组中的数据元素的最终值。
统计得出与所述图像的灰度级范围内的每个灰度级相对应的在所述灰度级分布数组中的数据元素的最终值,即是计算所述图像的灰度级范围内的每个灰度级在所述图像中存在的像素个数。具体可以是,先将灰度级分布数组中的数据元素的数值的初始值设为0;再提取出所述图像数据中的A值,并统计相同A值的个数;再将每个A值的个数分别覆盖到灰度级分布数组中与其相对应的数据元素的数值,从而得出所述灰度级分布数组中的数据元素的最终值。
本发明实施例中的获取图像灰度级分布的方法中,其通过获取图像的灰度级最大值与灰度级最小值,可以确定该图像的灰度级范围,进而可以确定灰度级分布数组的长度。因此,本发明实施例不需要定义一个变长的灰度级分布数组,这使得后续统计得出与所述图像的灰度级范围内的每个灰度级相对应的在所述灰度级分布数组中的数据元素的最终值的过程,不用动态计算该数组长度,因此可以提高计算所述图像的灰度级范围内的每个灰度级在所述图像中存在的像素个数的效率。
基于图1所示的获取图像灰度级分布的方法,如图2所示,所述统计得出与所述图像的灰度级范围内的每个灰度级相对应的在所述灰度级分布数组中的数据元素的最终值,包括:
S201:初始化灰度级分布数组和索引变量f值;即分别赋予给所述灰度级分布数组中的每个数据元素一个初始值,并赋予给索引变量f值一个初始值。
所述灰度级分布数组中的每个数据元素的初始值可以根据直方图的需求设定,通常是灰度级分布数组中的每个数据元素的初始值为0。
索引变量f值的设定,是为了后续根据f值读取所述图像数据中所述图像的每个像素的A值,因此,索引变量f值是随着每个像素的A值在所述图像数据中的序号不同而发生变化的。例如:可以设定索引变量f值的初始值为1,其对应所述图像数据中第一个A值;当索引变量为f2时,其对应所述图像数据中第二个A值;当索引变量f为3时,其对应所述图像数据中第三个A值;……;依次类推,直到对应所述图像数据中最后一个A值。
S202:根据所述图像数据、所述索引变量f值及所述灰度级的最小值,分别读取所述图像数据中所述图像的每个像素的A值。
S203:依据读取到的每个像素的A值和灰度级的最小值分别计算得出所述图像的每个像素的灰度级在所述灰度级分布数组中相应的序号变量m;然后,将所述灰度级分布数组中第m个数据元素的数值加1。
本发明实施例中的获取图像灰度级分布的方法,通过采用索引的方法,分别取出图像数据中所述图像的每个像素的A值,其可以避免用另外一个数组来存储灰度级,进而节约程序上的开销。另外,所述灰度级分布数组的长度已经确定,当需要改变该灰度级分布数组中数据元素的数值时,只需确定数据元素的序号即可,这里采用了依据每个像素的A值和灰度级的最小值分别计算得出相应的序号变量m,并且,将所述灰度级分布数组中第m个数据元素的数值加1;依此,即可统计得出与所述图像的灰度级范围内的每个灰度级相对应的在所述灰度级分布数组中的数据元素的最终值,进而得到所述图像的灰度级范围内的每个灰度级在所述图像中存在的像素个数。
基于图2所示的获取图像灰度级分布的方法,进一步地,所述赋予给索引变量f值一个初始值,是将所述图像数据中第一个A值的序号作为索引f1值,所述索引f1值是索引变量f值的初始值;
且,所述分别读取所述图像数据中所述图像的每个像素的A值,并读取到的依据每个像素的A值和灰度级的最小值分别计算得出所述图像的每个像素的灰度级在所述灰度级分布数组中相应的序号变量m;然后,将所述灰度级分布数组中第m个元素数据的数值加1;包括:
S301:将所述索引f1值加4得到索引f2值、将索引f2值加4得到索引f3值……依次得到相应的索引fn值,其中,n等于所述图像中的像素个数;
S302:根据索引f1值、f2值、f3值……fn值,分别读取所述图像数据中第索引f1值、f2值、f3值……fn值个数据元素的数值A1值、A2值、A3值……An值;
S303:依据读取到的A1值、A2值、A3值……An值和灰度级的最小值分别计算得出所述图像的每个像素的灰度级在所述灰度级分布数组中相应的序号m1、m2、m3……mn;然后,分别将所述灰度级分布数组中第m1、m2、m3……mn个元素数据的数值加1。
具体地,如图3所示的获取图像灰度级分布的方法:
步骤一:读取图像的图像数据,该图像包括的相邻的8个像素,其图像数据的排序为:0,0,0,20,0,0,0,15,0,0,0,14,0,0,0,16,0,0,0,15,0,0,0,20,0,0,0,16,0,0,0,11。
步骤二:根据所述图像数据,获取图像的灰度级最大值与灰度级最小值分别为20、11,依此确定所述图像的灰度级范围为11、12、13、14、15、16、17、18、19、20。
步骤三:根据所述图像的灰度级范围,确定灰度级分布数组的长度为10个数据元素;
步骤四:初始化灰度级分布数组,使得灰度级分布数组均为0,因此,该灰度级分布数组的初始为:0、0、0、0、0、0、0、0、0、0;其与所述图像的灰度级范围的对应关系可以是:该灰度级分布数组中起始数值与所述图像的灰度级范围内的11对应、与起始数值相邻的数值与所述图像的灰度级范围内的12对应……依此类推,最后一个数值与20对应。
步骤五:为了方便读取每个A值,可以将索引变量f值直接与每个像素的A值在所述图像数据中的序号相对应,在该组图像数据中,第一像素的A值、第二像素的A值、第三像素的A值、第四像素的A值、第五像素的A值、第六像素的A值、第七像素的A值、第八像素的A值的序号分别为(从0开始计数):3、7、11、15、19、23、27、31,因此,此时的索引变量f值的初始值f1值可以取3;
步骤六:根据索引f1值,读取所述图像数据中第索引f1值个数据元素的数值A1值(即为20);
步骤七:依据读取到的A1值和灰度级的最小值,将A1值(20)减去灰度级的最小值11,计算得出所述图像的与A1值对应的像素的灰度级在所述灰度级分布数组中相应的序号m1为9(这里是假设所述灰度级分布数组是从0开始计算的;如果是从1开始计算,应将A1值减去灰度级的最小值的差加1,即为10);
步骤八:将所述灰度级分布数组中第9(即m1)个数据元素的数值加1。
步骤九:判断A1值是否是所述图像数据中最后的A值;
步骤十:如果A1值是所述图像数据中最后的A值,则结束;
步骤十一:如果A1值是不是所述图像数据中最后的A值,则将当前的索引f1值加4即获得f2值(即为7),即此时的索引变量f为7;并进行以下步骤;
步骤十二:根据索引f2值,读取所述图像数据中第索引f2值个数据元素的数值A2值(即为15);
步骤十三:依据读取到的A2值和灰度级的最小值,将A2值(15)减去灰度级的最小值11,计算得出所述图像的每个像素的灰度级在所述灰度级分布数组中相应的序号m2位4(这里是假设所述灰度级分布数组是从0开始计算的;如果是从1开始计算,应将A2值减去灰度级的最小值的差加1,即为5);
步骤十四:将所述灰度级分布数组中第4(即m2)个元素数据的数值加1;
步骤十五:判断A2值是否是所述图像数据中最后的A值;
步骤十六:如果A2值是所述图像数据中最后的A值,则结束;
步骤十七:如果A2值是不是所述图像数据中最后的A值,则重复步骤十一-步骤十六,依次获得索引f3值、f4值、f5值、f6值、f7值、f8值,分别取值为11、15、19、23、27、31;并依据索引变量f值,直接从上述的图像数据中分别读取出对应的A3值、A4值、A5值、A6值、A7值、A8值,即分别为14、16、15、20、16、11。
其中,判断A1值、A2值等是否是所述图像数据中最后的A值的方法可以是:先计算出所述图像的像素个数,A值的总个数与该图像的像素个数相对应;然后将已获得的A值的个数与A值的总个数相比较,如果已获得的A值的个数小于A值的总个数,则所获得的当前的A值(A1值、A2值等)不是所述图像数据中最后的A值;如果已获得的A值的个数等于A值的总个数,则所获得的当前的A值(A1值、A2值等)是所述图像数据中最后的A值。
读取到每个A值之后,可以分别将每个A值减去灰度级的最小值(假设所述灰度级分布数组是从0开始计算的;如果是从1开始计算,分别将每个A值减去灰度级的最小值的差加1),依此计算,得出所述图像的每个像素的灰度级在所述灰度级分布数组中相应的序号m3、m4、m5、m6、m7、m8,变量m值分别为3、5、4、9、5、0;可以根据变量m值,分别将该灰度级分布数组中对应序号的数值加1,具体地:m为3时,将该灰度级分布数组中第3个数值加1;m为5时,将该灰度级分布数组中第5个数值加1;m再次为4时,将该灰度级分布数组中第4个数值加1(说明该图像上又一个像素点为该灰度级);m再次为9时,再次将该灰度级分布数组中第9个数值加1(说明该图像上又一个像素点为该灰度级);m再次为5时,再次将该灰度级分布数组中第5个数值加1(说明该图像上又一个像素点为该灰度级);m为0时,将该灰度级分布数组中第0个数值加1。由此计算出该灰度级分布数组中的每个数据元素的最终值,分别为:1、0、0、1、2、2、0、0、0、2。
通过上述过程,即得出所述图像的灰度级范围内的灰度级在所述图像中存在的像素个数,分别为(如图4所示的表格):灰度级11在所述图像中存在的像素个数为1,灰度级12在所述图像中存在的像素个数为0,灰度级13在所述图像中存在的像素个数为0,灰度级14在所述图像中存在的像素个数为1,灰度级15在所述图像中存在的像素个数为2,灰度级16在所述图像中存在的像素个数为2,灰度级17在所述图像中存在的像素个数为0,灰度级18在所述图像中存在的像素个数为0,灰度级19在所述图像中存在的像素个数为0,灰度级20在所述图像中存在的像素个数为2。由此可以得出对应的直方图。
基于图1所示的获取图像灰度级分布的方法,如图5所示,其中,所述获取所述图像的灰度级最大值与灰度级最小值,包括:
S401:初始化索引变量k值、灰度级变量a值、灰度级变量b值;将所述图像数据中A1值的序号作为索引k1值,A1是所述图像数据中第一个A值,索引k1值是索引变量k值的初始值;将当前可存储的整型数值的最小值赋予给灰度级变量a值,将当前可存储的整型数值的最大值赋予给灰度级变量b值。
这里的,当前可存储的整型数值的最小值,是指当前系统中可存储的整型数值的最小值;当前可存储的整型数值的最大值,是指当前系统中可存储的整型数值的最大值。
在此,索引变量k值的设定,是为了后续根据k值读取所述图像数据中所述图像的每个像素的A值,因此,索引变量k值是随着每个像素的A值在所述图像数据中的序号不同而发生变化的。例如:可以设定索引变量k值的初始值为1,其对应所述图像数据中第一个A值;当索引变量f为2时,其对应所述图像数据中第二个A值;当索引变量f为3时,其对应所述图像数据中第三个A值;……;依次类推,直到对应所述图像数据中最后一个A值。
S402:根据初始化的索引变量k值、所述图像数据,分别读取所述图像数据中所述图像中的每个像素的A值;
S403:将每个像素的A值分别与灰度级变量a值相比较,如果当前像素的A值较大时,就将当前像素的A值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于当前像素的A值;直到使得灰度级变量a值的最终值是所述图像的灰度级最大值;
S404:将每个像素的A值分别与灰度级变量b值相比较,如果当前像素的A值较小时,就将当前像素的A值覆盖当前灰度级变量b值,即使当前灰度级变量b值等于当前像素的A值;直到使得灰度级变量b值的最终值是所述图像的灰度级最小值。
基于图5所示的获取图像灰度级分布的方法,其中,所述读取取出所述图像数据中所述图像中的每个像素的A值包括:
S501:将索引k1值加4得到索引k2值,将所述索引k2值加4得到索引k3值……依次得到相应的索引kn值,其中n等于所述图像中像素个数;
S502:根据索引k1值、k2值、k3值……kn值,分别读取所述图像数据中第索引k1值、k2值、k3值……kn值个数据元素A1值、A2值、A3值……An值;
S503:依次将A1值、A2值、A3值……An值赋予给变量d,使得变量d值先后为d1、d2、d3……dn。
且,所述使得灰度级变量a值的最终值是所述图像的灰度级最大值包括:判断d1值是否大于当前灰度级变量a值,如果d1值大于当前灰度级变量a值,则将d1值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于d1值;然后,判断d2值是否大于当前灰度级变量a值,如果d2值大于当前灰度级变量a值,则将d2值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于d2值;……;依此顺序,直到判断dn值是否大于当前灰度级变量a值,如果dn值大于当前灰度级变量a值,则将dn值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于dn值。
所述使得灰度级变量b值的最终值是所述图像的灰度级最小值包括:判断d1值是否小于当前灰度级变量b值,如果d1值小于当前灰度级变量b值,则将d1值的数值覆盖当前灰度级变量b值,即当前灰度级变量b值等于d1值;然后,判断d2值是否小于当前灰度级变量b值,如果d2值小于当前灰度级变量b值,则将d2值的数值覆盖当前灰度级变量b值,即当前灰度级变量b值等于d2值;……;依此顺序,直到判断dn值是否小于当前灰度级变量b值,如果dn值小于当前灰度级变量b值,则将dn值的数值覆盖当前灰度级变量b值,即当前灰度级变量b值等于dn值。
具体地,如图6所示的获取所述图像的灰度级最大值与灰度级最小值的流程:
步骤1:读取的图像包括相邻的8个像素,其图像数据的排序为0,0,0,20,0,0,0,15,0,0,0,14,0,0,0,16,0,0,0,15,0,0,0,20,0,0,0,16,0,0,0,11。
步骤2:初始化索引变量k值、灰度级变量a值、灰度级变量b值;为了方便读取每个A值,可以将索引变量k值直接与每个像素的A值在所述图像数据中的序号相对应,在该组图像数据(从0开始计数)中,A1值的序号位3,因此,索引变量k值的初始值k1可以为3,将当前可存储的整型数值的最小值(-2的31次方,即为-2147483648)赋予给灰度级变量a值,将当前可存储的整型数值的最大值赋予给灰度级变量b值(2的31次方-1,即为2147483647);
步骤3:根据索引k1值,读取所述图像数据中第3(k1值)个数据元素20(A1值);
步骤4:将A1值赋予给变量d,使得变量d值为20(d1值);
步骤5:判断d1值(即为20)是否大于当前灰度级变量a值(即为-2147483648),如果d1值大于当前灰度级变量a值,则将d1值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于20值;
步骤6:判断d1值(即为20)是否小于当前灰度级变量b值(即为2147483647),如果d1值小于当前灰度级变量b值,则将d1值的数值覆盖当前灰度级变量b值,即当前灰度级变量b值等于20;
步骤7:判断A1值是否是所述图像数据中最后的A值;
步骤8:如果A1值是所述图像数据中最后的A值,则结束;
步骤9:如果A1值是不是所述图像数据中最后的A值,则将索引k1值加4得到索引k2值7;
步骤10:根据索引k2值,读取所述图像数据中第7(k2值)个数据元素15(A2值);
步骤11:将A2值赋予给变量d,使得变量d值为15(d2值);
步骤12:判断d2值(即为15)是否大于当前灰度级变量a值(即为20),如果d2值大于当前灰度级变量a值,则将d2值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于d2值;在此,d2值(即为15)不大于当前灰度级变量a值(即为20),因此,不用改变当前灰度级变量a值;
步骤13:判断d2值(即为15)是否小于当前灰度级变量b值(即为20),如果d2值小于当前灰度级变量b值,则将d2值的数值覆盖当前灰度级变量b值,即当前灰度级变量b值等于15;如果d2值不小于当前灰度级变量b值,则不用改变当前灰度级变量b值;
步骤16:判断A2值是否是所述图像数据中最后的A值;
步骤17:如果A2值是所述图像数据中最后的A值,则结束;
步骤18:如果A2值是不是所述图像数据中最后的A值,则重复步骤9-步骤17,依次得到索引k3值为11、k4值为15、k5值为19……k8值为31;再根据索引k3值、k4值、k5值、k6值、k7值、k8值,分别读取所述图像数据中第11、15、19、23、27、31个数据元素14(A3值)、16(A4值)、15(A5值)、20(A6值)、16(A7值)、11(A8值);依次将A3值、A4值、A5值……A8值赋予给变量d,使得变量d值先后为14(d3值)、16(d4值)、15(d5值)、20(d6值)、16(d7值)、11(d8值);
并判断d3值(即为14)是否大于当前灰度级变量a值(即为20),如果d3值大于当前灰度级变量a值,则将d3值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于d3值;否则,不用改变当前灰度级变量a值;……;依此顺序,直到判断d8值是否大于当前灰度级变量a值(即为20),如果d8值大于当前灰度级变量a值,则将d8值(即为11)的数值覆盖当前灰度级变量a值,否则,不用改变当前灰度级变量a值;由此可以得到灰度级变量a值的最终值为20,即20为所述图像的灰度级最大值;
并判断d3值(即为14)是否小于当前灰度级变量b值(即为15),如果d3值小于当前灰度级变量b值,则将d3值的数值覆盖当前灰度级变量b值,即使当前灰度级变量b值等于14值;否则,不用改变当前灰度级变量b值;……;依此顺序,直到判断d8值(即为11)是否小于当前灰度级变量a值(即为14),如果d8值小于当前灰度级变量b值,则将d8值的数值覆盖当前灰度级变量b值,即使当前灰度级变量b值等于11值;由此可以得到灰度级变量b值的最终值为11,即11为所述图像的灰度级最小值。
如图7所示的获取图像灰度级分布的装置,其包括:
读取模块,用于读取图像的图像数据,所述图像数据包括该图像中的每个像素的R值、G值、B值、A值,且所述图像数据中的数据元素是按照每个像素的R值、G值、B值、A值的顺序进行排列;
获取模块,用于根据所述图像数据,获取所述图像的灰度级最大值与灰度级最小值,进而确定所述图像的灰度级范围;所述图像的灰度级范围包括所述灰度级最小值、所述灰度级最大值、所述灰度级最大值与所述灰度级最小值之间的灰度级;
确定模块,用于根据所述图像的灰度级范围,确定灰度级分布数组的长度;所述灰度级分布数组是统计所述图像的灰度级范围内的每个灰度级在所述图像中存在的像素个数的分布数组,该灰度级分布数组包括若干个数据元素,所述确定灰度级分布数组的长度,是使所述灰度级分布数组中的数据元素的个数等于所述图像的灰度级范围内的灰度级的个数;所述图像的灰度级范围内的每个灰度级在所述灰度级分布数组中都有一个数据元素与其相对应,且该灰度级分布数组中的数据元素的最终值为与其对应的灰度级在所述图像中存在的像素个数;
统计模块,用于根据所述图像数据、所述灰度级分布数组,统计得出与所述图像的灰度级范围内的每个灰度级相对应的在所述灰度级分布数组中的数据元素的最终值。
本发明实施例中的获取图像灰度级分布的装置,可用于实现图1所示的方法,其通过获取图像的灰度级最大值与灰度级最小值,可以确定该图像的灰度级范围,进而可以确定灰度级分布数组的长度。因此,本发明实施例不需要定义一个变长的灰度级分布数组,这使得后续统计得出与所述图像的灰度级范围内的每个灰度级相对应的在所述灰度级分布数组中的数据元素的最终值的过程,不用动态计算该数组长度,因此可以提高计算所述图像的灰度级范围内的每个灰度级在所述图像中存在的像素个数的效率。
基于图7所示的获取图像灰度级分布的装置,如图8所示,所述统计模块包括:
第一初始化单元,用于初始化灰度级分布数组和索引变量f值;即分别赋予给所述灰度级分布数组中的每个数据元素一个初始值,并赋予给索引变量f值一个初始值;
第一读取单元,用于根据所述图像数据、所述索引变量f值及所述灰度级的最小值,分别读取所述图像数据中所述图像的每个像素的A值;
计算单元,用于依据读取到的每个像素的A值和灰度级的最小值分别计算得出所述图像的每个像素的灰度级在所述灰度级分布数组中相应的序号变量m;然后,将所述灰度级分布数组中第m个数据元素的数值加1。
进一步地,如图8所示,所述赋予给索引变量f值一个初始值,是将所述图像数据中第一个A值的序号作为索引f1值,所述索引f1值是索引变量f值的初始值;
所述第一读取单元包括:
第一索引子单元,用于将所述索引f1值加4得到索引f2值、将索引f2值加4得到索引f3值……依次得到相应的索引fn值,其中,n等于所述图像中的像素个数;
第一读取子单元,用于根据索引f1值、f2值、f3值……fn值,分别读取所述图像数据中第索引f1值、f2值、f3值……fn值个数据元素的数值A1值、A2值、A3值……An值,
所述计算单元包括计算子单元,用于依据读取到的A1值、A2值、A3值……An值和灰度级的最小值分别计算得出所述图像的每个像素的灰度级在所述灰度级分布数组中相应的序号m1、m2、m3……mn;然后,分别将所述灰度级分布数组中第m1、m2、m3……mn个数据元素的数值加1。
基于图8所示的获取图像灰度级分布的装置,如图9所示,所述获取模块包括:
第二初始化单元,用于初始化索引变量k值、灰度级变量a值、灰度级变量b值;将所述图像数据中A1值的序号作为索引k1值,A1是所述图像数据中第一个A值,索引k1值是索引变量k值的初始值;将当前可存储的整型数值的最小值赋予给灰度级变量a值,将当前可存储的整型数值的最大值赋予给灰度级变量b值;
第二读取单元,用于根据初始化的索引变量k值、所述图像数据,分别读取所述图像数据中所述图像中的每个像素的A值;
第一比较单元,用于将每个像素的A值分别与灰度级变量a值相比较,如果当前像素的A值较大时,就将当前像素的A值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于当前像素的A值;直到使得灰度级变量a值的最终值是所述图像的灰度级最大值;
第二比较单元,用于将每个像素的A值分别与灰度级变量b值相比较,如果当前像素的A值较小时,就将当前像素的A值覆盖当前灰度级变量b值,即使当前灰度级变量b值等于当前像素的A值;直到使得灰度级变量b值的最终值是所述图像的灰度级最小值。
进一步地,如图9所示,所述第二读取单元包括:
第二索引子单元,用于将索引k1值加4得到索引k2值,将所述索引k2值加4得到索引k3值……依次得到相应的索引kn值,其中n等于所述图像中像素个数;
第二读取子单元,用于根据索引k1值、k2值、k3值……kn值,分别读取所述图像数据中第索引k1值、k2值、k3值……kn值个数据元素A1值、A2值、A3值……An值;
赋予子单元,用于依次将A1值、A2值、A3值……An值赋予给变量d,使得变量d值先后为d1、d2、d3……dn;
所述第一比较单元包括第一判断子单元,用于判断d1值是否大于当前灰度级变量a值,如果d1值大于当前灰度级变量a值,则将d1值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于d1值;然后,判断d2值是否大于当前灰度级变量a值,如果d2值大于当前灰度级变量a值,则将d2值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于d2值;……;依此顺序,直到判断dn值是否大于当前灰度级变量a值,如果dn值大于当前灰度级变量a值,则将dn值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于dn值;
所述第二比较单元包括第二判断子单元,用于判断d1值是否小于当前灰度级变量b值,如果d1值小于当前灰度级变量b值,则将d1值的数值覆盖当前灰度级变量b值,即当前灰度级变量b值等于d1值;然后,判断d2值是否小于当前灰度级变量b值,如果d2值小于当前灰度级变量b值,则将d2值的数值覆盖当前灰度级变量b值,即当前灰度级变量b值等于d2值;……;依此顺序,直到判断dn值是否小于当前灰度级变量b值,如果dn值小于当前灰度级变量b值,则将dn值的数值覆盖当前灰度级变量b值,即当前灰度级变量b值等于dn值。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得终端设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以集成于一体,也可以分离部署;可以合并为一个模块,也可以进一步拆分成多个子模块。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
Claims (10)
1.一种获取图像灰度级分布的方法,其特征在于,包括以下步骤:
读取图像的图像数据,所述图像数据包括该图像中的每个像素的R值、G值、B值、A值,且所述图像数据中的数据元素是按照每个像素的R值、G值、B值、A值的顺序进行排列;
根据所述图像数据,获取所述图像的灰度级最大值与灰度级最小值,进而确定所述图像的灰度级范围;所述图像的灰度级范围包括所述灰度级最小值、所述灰度级最大值、所述灰度级最大值与所述灰度级最小值之间的灰度级;
根据所述图像的灰度级范围,确定灰度级分布数组的长度;所述灰度级分布数组是统计所述图像的灰度级范围内的每个灰度级在所述图像中存在的像素个数的分布数组,该灰度级分布数组包括若干个数据元素,所述确定灰度级分布数组的长度,是使所述灰度级分布数组中的数据元素的个数等于所述图像的灰度级范围内的灰度级的个数;所述图像的灰度级范围内的每个灰度级在所述灰度级分布数组中都有一个数据元素与其相对应,且该灰度级分布数组中的数据元素的最终值为与其对应的灰度级在所述图像中存在的像素个数;
根据所述图像数据、所述灰度级分布数组,统计得出与所述图像的灰度级范围内的每个灰度级相对应的在所述灰度级分布数组中的数据元素的最终值。
2.根据权利要求1所述的获取图像灰度级分布的方法,其特征在于,所述统计得出与所述图像的灰度级范围内的每个灰度级相对应的在所述灰度级分布数组中的数据元素的最终值,包括:
初始化灰度级分布数组和索引变量f值;即分别赋予给所述灰度级分布数组中的每个数据元素一个初始值,并赋予给索引变量f值一个初始值;
根据所述图像数据、所述索引变量f值及所述灰度级的最小值,分别读取所述图像数据中所述图像的每个像素的A值;
依据读取到的每个像素的A值和灰度级的最小值分别计算得出所述图像的每个像素的灰度级在所述灰度级分布数组中相应的序号变量m;然后,将所述灰度级分布数组中第m个数据元素的数值加1。
3.根据权利要求2所述的获取图像灰度级分布的方法,其特征在于,所述赋予给索引变量f值一个初始值,是将所述图像数据中第一个A值的序号作为索引f1值,所述索引f1值是索引变量f值的初始值;
所述分别读取所述图像数据中所述图像的每个像素的A值,并读取到的依据每个像素的A值和灰度级的最小值分别计算得出所述图像的每个像素的灰度级在所述灰度级分布数组中相应的序号变量m;然后,将所述灰度级分布数组中第m个元素数据的数值加1;包括:
将所述索引f1值加4得到索引f2值、将索引f2值加4得到索引f3值……依次得到相应的索引fn值,其中,n等于所述图像中的像素个数;
根据索引f1值、f2值、f3值……fn值,分别读取所述图像数据中第索引f1值、f2值、f3值……fn值个数据元素的数值A1值、A2值、A3值……An值;
依据读取到的A1值、A2值、A3值……An值和灰度级的最小值分别计算得出所述图像的每个像素的灰度级在所述灰度级分布数组中相应的序号m1、m2、m3……mn;然后,分别将所述灰度级分布数组中第m1、m2、m3……mn个数据元素的数值加1。
4.根据权利要求1所述的获取图像灰度级分布的方法,其特征在于,所述获取所述图像的灰度级最大值与灰度级最小值,包括:
初始化索引变量k值、灰度级变量a值、灰度级变量b值;将所述图像数据中A1值的序号作为索引k1值,A1是所述图像数据中第一个A值,索引k1值是索引变量k值的初始值;将当前可存储的整型数值的最小值赋予给灰度级变量a值,将当前可存储的整型数值的最大值赋予给灰度级变量b值;
根据初始化的索引变量k值、所述图像数据,分别读取所述图像数据中所述图像中的每个像素的A值;
将每个像素的A值分别与灰度级变量a值相比较,如果当前像素的A值较大时,就将当前像素的A值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于当前像素的A值;直到使得灰度级变量a值的最终值是所述图像的灰度级最大值;
将每个像素的A值分别与灰度级变量b值相比较,如果当前像素的A值较小时,就将当前像素的A值覆盖当前灰度级变量b值,即使当前灰度级变量b值等于当前像素的A值;直到使得灰度级变量b值的最终值是所述图像的灰度级最小值。
5.根据权利要求4所述的获取图像灰度级分布的方法,其特征在于,所述分别取出所述图像数据中所述图像中的每个像素的A值包括:
将索引k1值加4得到索引k2值,将所述索引k2值加4得到索引k3值……依次得到相应的索引kn值,其中n等于所述图像中像素个数;
根据索引k1值、k2值、k3值……kn值,分别读取所述图像数据中第索引k1值、k2值、k3值……kn值个数据元素A1值、A2值、A3值……An值;
依次将A1值、A2值、A3值……An值赋予给变量d,使得变量d值先后为d1、d2、d3……dn;
所述使得灰度级变量a值的最终值是所述图像的灰度级最大值包括:
判断d1值是否大于当前灰度级变量a值,如果d1值大于当前灰度级变量a值,则将d1值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于d1值;然后,判断d2值是否大于当前灰度级变量a值,如果d2值大于当前灰度级变量a值,则将d2值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于d2值;……;依此顺序,直到判断dn值是否大于当前灰度级变量a值,如果dn值大于当前灰度级变量a值,则将dn值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于dn值;
所述使得灰度级变量b值的最终值是所述图像的灰度级最小值包括:
判断d1值是否小于当前灰度级变量b值,如果d1值小于当前灰度级变量b值,则将d1值的数值覆盖当前灰度级变量b值,即当前灰度级变量b值等于d1值;然后,判断d2值是否小于当前灰度级变量b值,如果d2值小于当前灰度级变量b值,则将d2值的数值覆盖当前灰度级变量b值,即当前灰度级变量b值等于d2值;……;依此顺序,直到判断dn值是否小于当前灰度级变量b值,如果dn值小于当前灰度级变量b值,则将dn值的数值覆盖当前灰度级变量b值,即当前灰度级变量b值等于dn值。
6.一种获取图像灰度级分布的装置,其特征在于,包括:
读取模块,用于读取图像的图像数据,所述图像数据包括该图像中的每个像素的R值、G值、B值、A值,且所述图像数据中的数据元素是按照每个像素的R值、G值、B值、A值的顺序进行排列;
获取模块,用于根据所述图像数据,获取所述图像的灰度级最大值与灰度级最小值,进而确定所述图像的灰度级范围;所述图像的灰度级范围包括所述灰度级最小值、所述灰度级最大值、所述灰度级最大值与所述灰度级最小值之间的灰度级;
确定模块,用于根据所述图像的灰度级范围,确定灰度级分布数组的长度;所述灰度级分布数组是统计所述图像的灰度级范围内的每个灰度级在所述图像中存在的像素个数的分布数组,该灰度级分布数组包括若干个数据元素,所述确定灰度级分布数组的长度,是使所述灰度级分布数组中的数据元素的个数等于所述图像的灰度级范围内的灰度级的个数;所述图像的灰度级范围内的每个灰度级在所述灰度级分布数组中都有一个数据元素与其相对应,且该灰度级分布数组中的数据元素的最终值为与其对应的灰度级在所述图像中存在的像素个数;
统计模块,用于根据所述图像数据、所述灰度级分布数组,统计得出与所述图像的灰度级范围内的每个灰度级相对应的在所述灰度级分布数组中的数据元素的最终值。
7.根据权利要求6所述的获取图像灰度级分布的装置,其特征在于,所述统计模块包括:
第一初始化单元,用于初始化灰度级分布数组和索引变量f值;即分别赋予给所述灰度级分布数组中的每个数据元素一个初始值,并赋予给索引变量f值一个初始值;
第一读取单元,用于根据所述图像数据、所述索引变量f值及所述灰度级的最小值,分别读取所述图像数据中所述图像的每个像素的A值;
计算单元,用于依据读取到的每个像素的A值和灰度级的最小值分别计算得出所述图像的每个像素的灰度级在所述灰度级分布数组中相应的序号变量m;然后,将所述灰度级分布数组中第m个数据元素的数值加1。
8.根据权利要求7所述的获取图像灰度级分布的装置,其特征在于,所述赋予给索引变量f值一个初始值,是将所述图像数据中第一个A值的序号作为索引f1值,所述索引f1值是索引变量f值的初始值;
所述第一读取单元包括:
第一索引子单元,用于将所述索引f1值加4得到索引f2值、将索引f2值加4得到索引f3值……依次得到相应的索引fn值,其中,n等于所述图像中的像素个数;
第一读取子单元,用于根据索引f1值、f2值、f3值……fn值,分别读取所述图像数据中第索引f1值、f2值、f3值……fn值个数据元素的数值A1值、A2值、A3值……An值,
所述计算单元包括计算子单元,用于依据读取到的A1值、A2值、A3值……An值和灰度级的最小值分别计算得出所述图像的每个像素的灰度级在所述灰度级分布数组中相应的序号m1、m2、m3……mn;然后,分别将所述灰度级分布数组中第m1、m2、m3……mn个数据元素的数值加1。
9.根据权利要求6所述的获取图像灰度级分布的装置,其特征在于,所述获取模块包括:
第二初始化单元,用于初始化索引变量k值、灰度级变量a值、灰度级变量b值;将所述图像数据中A1值的序号作为索引k1值,A1是所述图像数据中第一个A值,索引k1值是索引变量k值的初始值;将当前可存储的整型数值的最小值赋予给灰度级变量a值,将当前可存储的整型数值的最大值赋予给灰度级变量b值;
第二读取单元,用于根据初始化的索引变量k值、所述图像数据,分别读取所述图像数据中所述图像中的每个像素的A值;
第一比较单元,用于将每个像素的A值分别与灰度级变量a值相比较,如果当前像素的A值较大时,就将当前像素的A值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于当前像素的A值;直到使得灰度级变量a值的最终值是所述图像的灰度级最大值;
第二比较单元,用于将每个像素的A值分别与灰度级变量b值相比较,如果当前像素的A值较小时,就将当前像素的A值覆盖当前灰度级变量b值,即使当前灰度级变量b值等于当前像素的A值;直到使得灰度级变量b值的最终值是所述图像的灰度级最小值。
10.根据权利要求9所述的获取图像灰度级分布的装置,其特征在于,所述第二读取单元包括:
第二索引子单元,用于将索引k1值加4得到索引k2值,将所述索引k2值加4得到索引k3值……依次得到相应的索引kn值,其中n等于所述图像中像素个数;
第二读取子单元,用于根据索引k1值、k2值、k3值……kn值,分别读取所述图像数据中第索引k1值、k2值、k3值……kn值个数据元素A1值、A2值、A3值……An值;
赋予子单元,用于依次将A1值、A2值、A3值……An值赋予给变量d,使得变量d值先后为d1、d2、d3……dn;
所述第一比较单元包括第一判断子单元,用于判断d1值是否大于当前灰度级变量a值,如果d1值大于当前灰度级变量a值,则将d1值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于d1值;然后,判断d2值是否大于当前灰度级变量a值,如果d2值大于当前灰度级变量a值,则将d2值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于d2值;……;依此顺序,直到判断dn值是否大于当前灰度级变量a值,如果dn值大于当前灰度级变量a值,则将dn值的数值覆盖当前灰度级变量a值,即使当前灰度级变量a值等于dn值;
所述第二比较单元包括第二判断子单元,用于判断d1值是否小于当前灰度级变量b值,如果d1值小于当前灰度级变量b值,则将d1值的数值覆盖当前灰度级变量b值,即当前灰度级变量b值等于d1值;然后,判断d2值是否小于当前灰度级变量b值,如果d2值小于当前灰度级变量b值,则将d2值的数值覆盖当前灰度级变量b值,即当前灰度级变量b值等于d2值;……;依此顺序,直到判断dn值是否小于当前灰度级变量b值,如果dn值小于当前灰度级变量b值,则将dn值的数值覆盖当前灰度级变量b值,即当前灰度级变量b值等于dn值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711278148.1A CN108109135A (zh) | 2017-12-06 | 2017-12-06 | 一种获取图像灰度级分布的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711278148.1A CN108109135A (zh) | 2017-12-06 | 2017-12-06 | 一种获取图像灰度级分布的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108109135A true CN108109135A (zh) | 2018-06-01 |
Family
ID=62209138
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711278148.1A Pending CN108109135A (zh) | 2017-12-06 | 2017-12-06 | 一种获取图像灰度级分布的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108109135A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5434931A (en) * | 1991-07-12 | 1995-07-18 | Educational Testing Service | System and method for picture image processing employing transformation of picture data |
JP2002024817A (ja) * | 2000-07-10 | 2002-01-25 | Sharp Corp | 画像処理方法及び画像処理装置 |
JP2006128986A (ja) * | 2004-10-28 | 2006-05-18 | Matsushita Electric Ind Co Ltd | 画像処理装置 |
US20110044542A1 (en) * | 2009-08-21 | 2011-02-24 | Seiko Epson Corporation | Image Processing Device |
CN104200446A (zh) * | 2014-08-14 | 2014-12-10 | 深圳市安健科技有限公司 | 一种dr影像对比度均衡的方法及系统 |
CN104243820A (zh) * | 2014-09-03 | 2014-12-24 | 奇瑞汽车股份有限公司 | 一种确定图像边界的方法及装置 |
CN104867130A (zh) * | 2015-04-21 | 2015-08-26 | 浙江工业大学 | 一种基于裂纹图像子区灰度均值的自适应分割方法 |
JP5911633B1 (ja) * | 2015-10-07 | 2016-04-27 | 株式会社LinkPro | 画像処理装置 |
-
2017
- 2017-12-06 CN CN201711278148.1A patent/CN108109135A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5434931A (en) * | 1991-07-12 | 1995-07-18 | Educational Testing Service | System and method for picture image processing employing transformation of picture data |
JP2002024817A (ja) * | 2000-07-10 | 2002-01-25 | Sharp Corp | 画像処理方法及び画像処理装置 |
JP2006128986A (ja) * | 2004-10-28 | 2006-05-18 | Matsushita Electric Ind Co Ltd | 画像処理装置 |
US20110044542A1 (en) * | 2009-08-21 | 2011-02-24 | Seiko Epson Corporation | Image Processing Device |
CN104200446A (zh) * | 2014-08-14 | 2014-12-10 | 深圳市安健科技有限公司 | 一种dr影像对比度均衡的方法及系统 |
CN104243820A (zh) * | 2014-09-03 | 2014-12-24 | 奇瑞汽车股份有限公司 | 一种确定图像边界的方法及装置 |
CN104867130A (zh) * | 2015-04-21 | 2015-08-26 | 浙江工业大学 | 一种基于裂纹图像子区灰度均值的自适应分割方法 |
JP5911633B1 (ja) * | 2015-10-07 | 2016-04-27 | 株式会社LinkPro | 画像処理装置 |
Non-Patent Citations (1)
Title |
---|
孤岛魂狼: "c语言中如何输入一个任意数组,然后通过函数来求数组中最大值", 《HTTPS://ZHIDAO.BAIDU.COM/QUESTION/1112601479851407859.HTML》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112446839B (zh) | 图像增强方法、装置、电子设备及计算机可读存储介质 | |
CN111369450A (zh) | 去除摩尔纹的方法与装置 | |
JP2901213B2 (ja) | カラー空間変換方法 | |
CN106293306A (zh) | 一种图标的排列方法及装置 | |
US8488893B2 (en) | Image compression apparatus and image compression method | |
CN102271251B (zh) | 无失真的图像压缩方法 | |
CN106897970A (zh) | 一种图像修复方法及装置 | |
CN108109135A (zh) | 一种获取图像灰度级分布的方法及装置 | |
EP1587299B1 (en) | Compressing and decompressing image of a mobile communication terminal | |
CN107341835A (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN113112428A (zh) | 图像处理方法、装置、电子设备及可读存储介质 | |
CN1255984C (zh) | 图象处理装置及照相机、以及图象处理方法 | |
CN104021579A (zh) | 图片变色方法及装置 | |
CN110458768B (zh) | 图像处理方法、计算机设备和可读存储介质 | |
TWI496442B (zh) | 影像處理方法與影像顯示裝置 | |
CN114845069A (zh) | 视频处理方法、装置、电子设备及存储介质 | |
US6433820B1 (en) | Image pickup system and storage medium | |
CN108282643B (zh) | 图像处理方法、图像处理装置及电子设备 | |
CN103186785B (zh) | 肤色侦测方法及系统 | |
CN112581403A (zh) | 一种鱼眼图像校正方法、系统及介质 | |
CN112053277B (zh) | 一种图像换肤的方法、装置、设备及存储介质 | |
CN100484190C (zh) | 半色调化影像的方法、装置和产生递色罩的方法 | |
CN109389932A (zh) | 显示调节方法及显示装置 | |
CN111220836B (zh) | 一种应用于示波器的画面存储方法及系统 | |
CN108600721A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180601 |