[发明专利]一种基于GPU的快速星表检索方法有效
申请号: | 201110164348.0 | 申请日: | 2011-06-17 |
公开(公告)号: | CN102201008A | 公开(公告)日: | 2011-09-28 |
发明(设计)人: | 郑昌文;李超;吴佳泽;程小华 | 申请(专利权)人: | 中国科学院软件研究所 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06T7/00 |
代理公司: | 北京君尚知识产权代理事务所(普通合伙) 11200 | 代理人: | 冯艺东 |
地址: | 100190 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 gpu 快速 检索 方法 | ||
技术领域
本发明属于计算机仿真领域,具体涉及一种具有快速实时特点的星表检索方法,该检索方法能够在给定大小的视场下,快速检索出星表中落入视场内的恒星。
背景技术
星敏感器是卫星姿态确定与控制系统中重要的星上设备,主要采用快速的星图识别算法以确定卫星的姿态。为了测试星敏感器的识别算法性能,需要使用星模拟器,模拟任意时刻,任意飞行器姿态下的星敏感器视场内的星图。计算机模拟星敏感器等航天设备拍摄到的背景星图,首先根据探测视场光轴的赤经、赤纬,以给定的星敏感视场大小以及视场绕光轴的旋转角度确定视场范围,从星表提取落入视场内的恒星,最后将这些星点以二维图像形式显示出来。落人星敏感器视场内的观测星与模拟天球分布的所有观测星相比只占极少数,这就存在一个在星表快速检索落入星敏感器视场的观测星的问题。设计高效率的星表检索算法是提高星图模拟速度,实现星空环境实时仿真的关键因素。
星表包含了一定数量恒星的星编号、星等、对应某一历元时刻的星位置(天赤经、天赤纬)等数据,构成了对空间天球坐标系下恒星的描述。星表检索以恒星星表为基础,通过给定视场大小和视轴指向确定搜索范围,从星表中检索出落入视场内的恒星。为了加快星表检索速度,文献[1](参考Bone Jeffery W.on-orbit star processing using multi-startrackers[J].Proc.SPIE,1994,22(21):6-8)提出一种球矩阵结构来存储星表,通过优化星表结构以提高恒星存取效率,但该方法在矩阵维数较大时,存取时间并不能显著减少。文献[2](参考饶才杰,房建成.一种星图模拟中观测星提取的方法[J].光学精密工程,2004,12(2):129-134.)提出了经纬度圈法划分星表,用赤经圈和赤纬圈将天球分成不重叠的区域,每个区域独立存储,该方法边界清晰,计算简单,然而在处理大规模星表时容易产生过多的分区,影响恒星查询效率;文献[3](参考张广军,魏新国,江洁.一种改进的三角形星图识别方法[J].航空学报,2006,27(6):1150-1154.)通过构造天球的“内接正方体”将天球球面均匀分成6块,再细分块为更多子块,通过子块索引号读取恒星,这种方法查询方便,但对恒星的块边界判断较复杂,当恒星数量较大时,边界计算耗时较高。为了缩小搜索范围,文献[4](参考胡宜宁,巩岩.动态星图显示算法的设计与实现[J].宇航学报,2008,29(3):849-853.)针对某一指向的视场,取视场光轴所在分区临近的八个子区作为搜索区,检索落入视场内的恒星,该方法有效缩小检索空间,然而只能针对特定大小的视场,这是因为天球上赤经弧长随纬度增加而逐渐缩短,当视轴指向不同天区,不同大小的视场覆盖的子区数目并不相同。文献[5](参考蔡志武,韩春好,陈金平.一种高精度星载导航星库的构建方法[J].测绘科学技术学报,2006,23(1):29-32.)通过计算球表面上视场的经纬度边界范围,进而查找该视场所关联的子区,但该方法采用膨胀因子计算经纬度边界范围,计算精度不高。此外,已有的视场内恒星检索过程均在CPU上的串行实现,在恒星数量巨大时,检索效率并不高。随着星敏感器等航天设备观测能力的提升,可观测星等域越来越大。目前在大视场、宽探测星等域条件下,如何提高星表检索速度已经成为航天仿真在星空领域的亟需解决的问题。
发明内容
针对现有方法的缺点,本发明提出一种基于GPU的星表检索方法。该方法采用经纬度划分法对星表进行星区划分;提出了一种视场所覆盖的星区计算方法,解决视场边界范围计算不准问题;然后采用NIVIDIA提出的CUDA并行架构,设计基于GPU平台的视场恒星查找并行算法;具有快速检索出星表的效果。
为了实现本发明的目的,采用的技术方案概述如下:
一种基于GPU的星表检索方法,其步骤包括:
1)采用经纬度划分法将星表划分为星区存储;
2)计算星敏感器圆形视场区域所覆盖的星区,该过程先计算视轴的球面坐标;然后计算圆形视场的经纬度边界,在分区星表中查找圆形视场所覆盖的星区;
3)将星区内恒星传入GPU全局内存以恒星集方式存储,GPU恒星计算线程网格划分为若干个线程块,每个线程块负责处理一个恒星集合,每一个线程负责对一个恒星进行检索;
4)各线程检索出落入圆形视场内的恒星,在圆形视场内检索出落入CCD成像面的恒星。
所述步骤1)经纬度划分法是按照一定的经纬度间隔,用赤经圈和赤纬圈将天球分成不重叠的区域,每个区域内的恒星独立存储,并按照各个区域所在经度和纬度范围进行编号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院软件研究所,未经中国科学院软件研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110164348.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一体式结构中的多个电化学和聚能组件的制造方法和结构
- 下一篇:内窥镜设备