无权-未缴年费 中国
著录项
摘要
本发明涉及一种从星图中提取星像的方法,包括:一、将星图转换为十字链表;并把星像像元的坐标(x,y)和灰度值f(x,y)存储到十字链表的节点中;二、定义初始值为0的三个变量ACC1、ACC2、ACC3作为三个累加器;三、以区域增长算法连通一星像区域,同时将所述的三个累加器分别增加xf(x,y)、yf(x,y)、f(x,y),并将提取过所述坐标(x,y)和灰度值f(x,y)的节点从所述十字链表中删除;重复该步骤三,直至所述星像区域已经连通;四、使用所述三个累加器计算该星像的质心坐标(xc,yc)和亮度Y;五、将所述的三个累加器置0,重复上述步骤三至四,直至所述十字链表为空,即所有星像提取完毕。
法律状态
法律状态公告日 | 20181207 |
法律状态 | 专利权的终止 |
法律状态信息 | 未缴年费专利权终止 IPC(主分类):G06T 7/00 申请日:20120917 授权公告日:20160608 终止日期:20170917 |
法律状态公告日 | 20160608 |
法律状态 | 授权 |
法律状态信息 | 授权 |
法律状态公告日 | 20130313 |
法律状态 | 实质审查的生效 |
法律状态信息 | 实质审查的生效 IPC(主分类):G06T 7/00 申请日:20120917 |
法律状态公告日 | 20130130 |
法律状态 | 公开 |
法律状态信息 | 公开 |
权利要求
权利要求数量(2)
独立权利要求数量(1)
1.一种从星图中提取星像的方法,包括:
步骤一、设一星图的背景区域像元的灰度值为0,星像像元的灰度值为 非0;对该星图进行遍历,以将所述星图转换为十字链表;提取灰度值为非 0的星像像元的坐标(x,y)和灰度值f(x,y),并把所述星像像元的坐标(x,y) 和灰度值f(x,y)存储到十字链表的节点中;
步骤二、定义初始值为0的三个变量ACC1、ACC2、ACC3作为三个累加 器;
步骤三、在星图中,一个星像占据一个连通的区域,将该连通的区域 称为一个星像区域;以区域增长算法连通一星像区域,即以所述十字链表 中的第一个节点为启始种子,依次提取代表邻域节点的像元的坐标(x,y)和 灰度值f(x,y),同时将所述的三个累加器分别增加xf(x,y)、yf(x,y)、 f(x,y),并将提取过所述坐标(x,y)和灰度值f(x,y)的节点从所述十字链表 中删除;重复该步骤三,直至所述星像区域已经连通;
步骤四、使用所述三个累加器计算该星像的质心坐标(x c,y c)和亮度Y, 即
质心坐标(x c,y c)为:
亮度为:Y=ACC3;
步骤五、将所述的三个累加器置0,重复上述步骤三至四,直至所述十 字链表为空,即所有星像提取完毕。
2.根据权利要求1所述的从星图中提取星像的方法,其特征在于:所 述步骤一中将所述星图转换为十字链表的方法包括:设所述星图的背景灰 度均值为阈值T,若一星图像元的灰度值f(x,y)大于该阈值T,则该星像像 元的灰度值为非0;若星图像元的灰度值f(x,y)等于该阈值T,则该星像像 元的灰度值为0。
1.一种从星图中提取星像的方法,包括:
步骤一、设一星图的背景区域像元的灰度值为0,星像像元的灰度值为非0;对该星图进行遍历,以将所述星图转换为十字链表;提取灰度值为非0的星像像元的坐标(x,y)和灰度值f(x,y),并把所述星像像元的坐标(x,y)和灰度值f(x,y)存储到十字链表的节点中;
步骤二、定义初始值为0的三个变量ACC1、ACC2、ACC3作为三个累加器;
步骤三、在星图中,一个星像占据一个连通的区域,将该连通的区域称为一个星像区域;以区域增长算法连通一星像区域,即以所述十字链表中的第一个节点为启始种子,依次提取代表邻域节点的像元的坐标(x,y)和灰度值f(x,y),同时将所述的三个累加器分别增加xf(x,y)、yf(x,y)、f(x,y),并将提取过所述坐标(x,y)和灰度值f(x,y)的节点从所述十字链表中删除;重复该步骤三,直至所述星像区域已经连通;
步骤四、使用所述三个累加器计算该星像的质心坐标(xc,yc)和亮度Y,即
质心坐标(xc,yc)为: x c = ACC 1 ACC 3 , ]]> y c = ACC 2 ACC 3 ; ]]>
亮度为:Y=ACC3;
步骤五、将所述的三个累加器置0,重复上述步骤三至四,直至所述十字链表为空,即所有星像提取完毕。
2.根据权利要求1所述的从星图中提取星像的方法,其特征在于:所述步骤一中将所述星图转换为十字链表的方法包括:设所述星图的背景灰度均值为阈值T,若一星图像元的灰度值f(x,y)大于该阈值T,则该星像像元的灰度值为非0;若星图像元的灰度值f(x,y)等于该阈值T,则该星像像元的灰度值为0。
说明书
本发明属于天文导航技术邻域,涉及一种从星图中提取星像的方法。
准确的姿态信息为航天器的顺利飞行提供重要保障,星敏感器是目前精度最高的一种姿态测量仪器,工作过程主要由星图获取、星像提取、星图识别、姿态估算等步骤组成。星像提取是通过处理星图得到星像亮度和位置等数据的过程,是顺利进行星图识别的前提。随着采用的图像传感器阵列增大,星像提取处理时间增加,时效问题突显。研究快速星像提取算法,对于提高测姿速率,研发高性能实时姿态测量星敏感器具有重要意义。
星像提取包括星像和背景分离、星像与星像的分离、质心计算和亮度计算处理过程,目前的星像提取算法大都是改进其中一个或几个步骤的处理方法。
针对星像和背景的分离,李广泽等在2005年第13卷S1期“光学精密工程”上报道了基于双正交小波的星像提取算法,通过双正交小波变换分解星图,确定阈值分割星像和背景。在2009年第35卷第3期“光学技术”上发表的《基于背景自适应预测的星点提取算法》在背景预测的基础上,采用自适应阈值法分割图像,提出了背景自适应预测的星像提取算法。它们都属于动态阈值分割算法,虽然提高了分割准确性,但处理速率低于固定阈值法。
在星像间分离方面,最常用的方法是连通域标记法,除需要遍历星图外,邻域像元经常发生标记冲突,算法须回溯扫描。分别发表在2005年“北京航空航天大学学报”第31卷第3期和第4期的《内嵌ARM核的FPGA技术在星敏感器中的应用》和《CMOS星敏感器图像驱动及实时星点定位算法》基于嵌入式技术,采用FPGA硬件方法实现了4连通域实时星像提取,提高了运行速率。区域增长算法也是一种常用的方法,不存在标记冲突问题,不需回溯扫描,但为了寻找启始种子,需重复遍历星图,处理速率还不够理想。2005年柳健等在“光电工程”第32卷第2期上提出了极值点法,利用最小二乘向量机求出星图局部区域灰度的最佳拟合曲面,以曲面的最大值点作为像素聚类的启始点,分离各个星像。2006年王兆魁等在“空间科学学报”第26卷第3期上提出交叉投影星像提取算法,通过检测竖直和水平方向上的星图投影,得到各个星像外接四边形的顶点坐标,确定每个星像的分布范围。
与质心计算有关的星像提取算法中,曲面拟合方法精度较高,抗噪性能优于带阈值的质心算法和加权质心算法。2006年李春艳等在“光电工程”第33卷第2期上提出基于亚像元相关法的星像质心算法,将星像数据拟合成解析曲面函数,并与理想模板函数作相关运算,求相关函数,通过计算相关函数最大值,求出星像位置,计算精度优于1/12个像元,由于计算过程复杂,星像提取速率低。
本发明要解决的技术问题是提供一种快速从星图中提取星像,以缩短星象提取时间的方法。
本发明的从星图中提取星像的方法的基本思想是,经过灰度阈值处理后的星图,星像只占少部分区域,大部分区域灰度值为0。以十字链表稀疏矩阵结构记录星图,可剔除无关信息,避免重复判断非星像像元。通过处理十字链表,即可完成提取星像。区域增长算法从启始种子开始连通星像区域,减少了判断非星像像元的次数。星图以十字链表存储时,十字链表的每个节点都代表星像像元。而以区域增长算法处理十字链表星图,不必再判断当前像元是否为星像像元。这样,可以避免重复扫描星图。如果十字链表中的星像像元已经连通,当提取一个连通区域后,该区域像元已全部从链表中删除。提取出的像元数据直接用于计算星像质心。当提取新的星像时,启始种子总是十字链表的第一个节点,不需再次扫描星图。
按照区域增长算法的基本原理,在一个星像区域的增长过程中遇到的每一个灰度大于阈值的像元都是种子,它们将执行相同的任务,检查邻域是否有新的种子,直到在新种子邻域中找不到未知的种子,此时一个星像区域已经连通,本发明将该过程称为像元聚类。
本发明提供了一种从星图中提取星像的方法,包括:
步骤一、设一星图的背景区域像元的灰度值为0,星像像元的灰度值为非0;对该星图进行遍历,以将所述星图转换为十字链表;提取灰度值为非0的星像像元的坐标(x,y)和灰度值f(x,y),并把所述星像像元的坐标(x,y)和灰度值f(x,y)存储到十字链表的节点中;通过该步骤一能有效的做到星象和背景的分离。
步骤二、定义初始值为0的三个变量ACC1、ACC2、ACC3作为三个累加器。
步骤三、在星图中,一个星像占据一个连通的区域,将该连通的区域称为一个星像区域;以区域增长算法连通一星像区域,即以所述十字链表中的第一个节点为启始种子,依次提取代表邻域节点的像元的坐标(x,y)和灰度值f(x,y),同时将所述的三个累加器分别增加xf(x,y)、yf(x,y)、f(x,y),并将提取过所述坐标(x,y)和灰度值f(x,y)的节点从所述十字链表中删除;重复该步骤三,直至所述星像区域已经连通;通过区域增长算法能够快速的查找并判断星像区域,并实现星像和星像的分离。
步骤四、使用所述三个累加器计算该星像的质心坐标(xc,yc)和亮度Y,即
质心坐标(xc,yc)为: x c = ACC 1 ACC 3 , ]]> y c = ACC 2 ACC 3 ; ]]>
亮度为:Y=ACC3;
通过以上两个公式能快速的计算出质心坐标和亮度。
步骤五、将所述的三个累加器置0,重复上述步骤三至四,直至所述十字链表为空,即所有星像提取完毕。
进一步,为了能更好的达到分离星象和背景的目的,取阈值约等于背景灰度均值,带阈值的质心算法精度高。
固定阈值法先以灰度阈值T处理星图,如下式计算,
其中f(x,y)、F(x,y)分别为星图像元阈值处理前和处理后的灰度值。所述步骤一中将所述星图转换为十字链表的方法包括:设所述星图的背景灰度均值为阈值T,若一星图像元的灰度值f(x,y)大于该阈值T,则该星像像元的灰度值为非0;若星图像元的灰度值f(x,y)等于该阈值T,则该星像像元的灰度值为0。
本发明具有以下优点:(1)采用固定阈值法能快速的将星图转换为十字链表,并将星像像元的坐标(x,y)和灰度值f(x,y)存储到十字链表的节点中,有效的做到星象和背景的分离;(2)取阈值约等于背景灰度均值,带阈值的质心算法精度高;(3)通过区域增长算法能够快速的查找并判断星像区域,并实现星像和星像的分离;(4)当连通一个星像后,直接计算星像质心,提取星像速率快;(5)该方法只需一次星图遍历,避免重复判断星像像元。
为了使本发明的内容更容易被清楚的理解,下面根据的具体实施例并结合附图,对本发明作进一步详细的说明,其中
图1是本发明的从星图中提取星像的方法的流程图;
图2是本发明的从星图中提取星像的方法处理一幅星图的耗时统计图;
图3是本发明的从星图中提取星像的方法处理一幅星图耗费时间统计图;
图4是本发明的从星图中提取星像的方法提取一个星像平均耗费时间统计图。
下面结合附图及实施例对本发明进行详细说明:
实施例1
一种从星图中提取星像的方法,包括:
步骤一、设一星图的背景区域像元的灰度值为0,星像像元的灰度值为非0;对该星图进行遍历,以将所述星图转换为十字链表;提取灰度值为非0的星像像元的坐标(x,y)和灰度值f(x,y),并把所述星像像元的坐标(x,y)和灰度值f(x,y)存储到十字链表的节点中;
进一步,为了能更好的达到分离星象和背景的目的,固定阈值法的取阈值约等于背景灰度均值,带阈值的质心算法精度高。
固定阈值法先以灰度阈值T处理星图,如下式计算,
其中f(x,y)、F(x,y)分别为星图像元阈值处理前和处理后的灰度值。所述步骤一中将所述星图转换为十字链表的方法包括:设所述星图的背景灰度均值为阈值T,若一星图像元的灰度值f(x,y)大于该阈值T,则该星像像元的灰度值为非0;若星图像元的灰度值f(x,y)等于该阈值T,则该星像像元的灰度值为0。
十字链表是一种稀疏矩阵数据结构,各个非0元素通过指针相互串接,成为链表的一个节点,每个节点除行、列坐标、元素值外,还以行向量指针right指向同行下一个节点,以列向量指针down指向同列下一个节点。其结构定义为
struct CrossNode{int row,col;TYPE value;
CrossNode*right,*down;}
整个矩阵结构为
struct CLMatrix{int m,n,t;
CrossNode*rv[MaxRows+1];
CrossNode*cv[MaxRows+1];}
其中rv和cv分别代表每行、每列第一个像元的节点,MaxRows表示行数可取的最大值。由以上定义可见,每个节点本身是一个指针,包含链表中的后继数据,其是一种十分紧凑的数据存储结构。
步骤二、定义初始值为0的三个变量ACC1、ACC2、ACC3作为三个累加器;
步骤三、在星图中,一个星像占据一个连通的区域,将该连通的区域称为一个星像区域;以区域增长算法连通一星像区域,即以所述十字链表中的第一个节点为启始种子,依次提取代表邻域节点的像元的坐标(x,y)和灰度值f(x,y),同时将所述的三个累加器分别增加xf(x,y)、yf(x,y)、f(x,y),并将提取过所述坐标(x,y)和灰度值f(x,y)的节点从所述十字链表中删除,即将所述启始种子上一节点的down指针指向下一节点,将左一节点的right指针指向右一节点,将该种子从链表中删除;重复该步骤三,直至所述星像区域已经连通。
步骤四、使用所述三个累加器计算该星像的质心坐标(xc,yc)和亮度Y,即
质心坐标(xc,yc)为: x c = ACC 1 ACC 3 , ]]> y c = ACC 2 ACC 3 ; ]]>
亮度为:Y=ACC3;
步骤五、将所述的三个累加器置0,重复上述步骤三至四,直至所述十字链表为空,即所有星像提取完毕。
所述区域增长算法具体内容参见:作者杨帆,《数字图像处理与分析》,ISBN 978-7-5124-0188-4第217页。
实施例2
在实施例1的基础上本发明的从星图中提取星像的方法,其具体的步骤包括:
步骤1,定义M为十字链表。遍历星图,以将所述星图转换为十字链表M;其中提取灰度大于阈值的像元位置和灰度值,存储到十字链表M的节点中。
步骤2,定义三个变量ACC1、ACC2、ACC3作为累加器,并初始化为0。以十字链表第一个节点为启始种子。
步骤3,提取当前种子的坐标(x,y)、灰度值f(x,y),累加器ACC1、ACC2、ACC3分别增加xf(x,y)、yf(x,y)、f(x,y)。根据当前种子的行向量指针right,列向量指针down,提取右方、下方最邻近像元,记作rightnode、downnode。由行号row、列号col计算左边、上边最邻近像元,记作leftnode、upnode。将leftnode的行向量指针right指向rightnode,upnode的列向量指针down指向downnode,从而将当前种子从链表中删除,节点总数t减小1。
步骤4,区域增长算法连通一星像区域,即当考查四邻域时,只需计算upnode、downnode、leftnode、rightnode。当考查八邻域时,再计算左上、左下、右上、右下四个对角最邻近像元lupnode、ldownnode、rightupnode、rightdownnode。检查这些像元是否处于当前种子邻域内,如果是,则以它们为新的种子。以新种子为当前种子,转向步骤3。否则,同一星像区域全部连通。根据累加器ACC1、ACC2、ACC3的值,计算该星像的质心坐标(xc,yc)和亮度Y。
x c = ACC 1 ACC 3 , ]]> y c = ACC 2 ACC 3 ]]>
Y=ACC3;
步骤5,返回步骤2,直到节点总数t=0,链表为空。
上述步骤简化成流程图,如图1所述。
实施例3
在实施例1和实施例2的基础上对本发明作进一步的提取效率作进一步验证。
在DELL电脑(型号为DIMENSION 4600,CPU为Pentium 4、2.80GHz,内存容量为512M)上处理星图。随机产生1000幅分辨率为1024×1024像素的模拟星图,从这1000幅星图中共提取了20347个星像,平均每幅星图20个星像。
本发明方法处理每幅星图的时间如图2所示,55.5%的星图星像提取时间为16毫秒,44.5%的星图星像提取时间为15毫秒。总体而言,本发明的方法处理一幅星图的时间约为16毫秒,与星图像元总数成正比,与星图中的星数无关,这些时间主要耗费在将星图转换为十字链表的过程中。星图中星像所占比例很小,无论是采用4邻域还是8邻域像元聚类,整幅星图分离星像和计算质心耗时少于1毫秒。
本发明处理上述星图提取星像所花的时间如图3所示,处理单幅星图最长需要922毫秒,最短156毫秒,平均时间为378.4毫秒,RMS值为398.9毫秒,处理时间与星图所含的星像数有关,星像数越多,星像提取时间越长。图4为提取1颗星平均所花的时间,最短20.8毫秒,最长69.3毫秒,平均26.5毫秒。本发明方法运算速度达到区域增长法的20倍以上。
为了和其他算法比较,按照以上方法,本发明方法处理512×512和2048×2048像素的星图,得到单幅星图的星像提取时间分别约为4毫秒、64毫秒。极值点法处理分辨率为512×512像素的星图所用时间约为400毫秒(Pentium 3,700MHz电脑上运行,数据来源于发表在2005年“光电工程”第32卷第2期上的《一种新的星图中星获取算法》),交叉投影星像提取算法处理2048×2048的像素星图,用时接近400毫秒(Pentium 4,3.2GHz电脑上运行,数据来源于发表在2006年“空间科学学报”第26卷第3期上的《一种CCD星图星点快速定位算法》)。可见,本发明方法处理速率更快。
显然,上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而这些属于本发明的精神所引伸出的显而易见的变化或变动仍处于本发明的保护范围之中。
价值度评估
技术价值
经济价值
法律价值
0 0 052.0分
0 50 75 100专利价值度是通过科学的评估模
型对专利价值进行量化的结果,
基于专利大数据针对专利总体特
征指标利用计算机自动化技术对
待评估专利进行高效、智能化的
分析,从技术、经济和法律价值
三个层面构建专利价值评估体
系,可以有效提升专利价值评估
的质量和效率。
总评:52.0分
该专利价值中等 (仅供参考)
技术价值 29.0
该指标主要从专利申请的著录信息、法律事件等内容中挖掘其技术价值,专利类型、独立权利要求数量、无效请求次数等内容均可反映出专利的技术性价值。 技术创新是专利申请的核心,若您需要进行技术借鉴或寻找可合作的项目,推荐您重点关注该指标。
部分指标包括:
授权周期(发明)
44 个月独立权利要求数量
0 个从属权利要求数量
0 个说明书页数
5 页实施例个数
0 个发明人数量
4 个被引用次数
0 次引用文献数量
0 个优先权个数
0 个技术分类数量
2 个无效请求次数
0 个分案子案个数
0 个同族专利数
0 个专利获奖情况
无保密专利的解密
否经济价值 7.0
该指标主要指示了专利技术在商品化、产业化及市场化过程中可能带来的预期利益。 专利技术只有转化成生产力才能体现其经济价值,专利技术的许可、转让、质押次数等指标均是其经济价值的表征。 因此,若您希望找到行业内的运用广泛的热点专利技术及侵权诉讼中的涉案专利,推荐您重点关注该指标。
部分指标包括:
申请人数量
2申请人类型
院校许可备案
0 次权利质押
0 次权利转移
0 个海关备案
否法律价值 16.0
该指标主要从专利权的稳定性角度评议其价值。专利权是一种垄断权,但其在法律保护的期间和范围内才有效。 专利权的存续时间、当前的法律状态可反映出其法律价值。故而,若您准备找寻权属稳定且专利权人非常重视的专利技术,推荐您关注该指标。
部分指标包括:
存活期/维持时间
6法律状态
无权-未缴年费