An object-oriented synthetic aperture radar processor implemented using C++ classes

H. Maney
{"title":"An object-oriented synthetic aperture radar processor implemented using C++ classes","authors":"H. Maney","doi":"10.1109/NAECON.1994.332946","DOIUrl":null,"url":null,"abstract":"By far, the most popular applications for object-oriented programming (OOP) are those dealing with graphical user interfaces. This is not surprising. An association between a visible element on a display and a computer language object seems natural. In the field of radar signal processing, however, the use of objects is less common. A primary reason for the lack of popularity of OOP for signal processing is the perception that OOP languages generate slower executing code than procedural languages. As OOP languages mature and computers become faster, this becomes less of a concern. The tools of OOP (data encapsulation, inheritance, polymorphism,) can be just as useful to radar signal processor developers as they are to user interface developers. They increase the level of abstraction available to the developer, allowing him or her to concentrate more on the solution to a problem and less on the implementation of it. The tools allow the developer to produce truly reusable code, reducing the amount of debugging needed in later projects. The end result can be higher developer productivity and more reliable code. This paper describes an implementation of a complete synthetic aperture radar (SAR) processor in C++. Raw radar data collected using the Norden AN/APG-76 Multi-mode Radar aboard Norden's Gulfstream II test aircraft were used as input to the C++ processor. The processor was evaluated for speed and accuracy in comparison with an equivalent FORTRAN processor and the AN/APG-76 processor. This test indicated that the APG-76 processing speed was equivalent to 70 SGI/MIPS R4000 50/100's programmed in FORTRAN or C++. The ease or difficulties encountered in porting the processor to several machine types are documented. The resulting high-resolution radar image is compared with the AN/APG-76 real-time image. The major classes are described. Rationale for class designs is provided and the overall benefits of OOP are evaluated.<<ETX>>","PeriodicalId":281754,"journal":{"name":"Proceedings of National Aerospace and Electronics Conference (NAECON'94)","volume":"48 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1994-05-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of National Aerospace and Electronics Conference (NAECON'94)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/NAECON.1994.332946","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 4

Abstract

By far, the most popular applications for object-oriented programming (OOP) are those dealing with graphical user interfaces. This is not surprising. An association between a visible element on a display and a computer language object seems natural. In the field of radar signal processing, however, the use of objects is less common. A primary reason for the lack of popularity of OOP for signal processing is the perception that OOP languages generate slower executing code than procedural languages. As OOP languages mature and computers become faster, this becomes less of a concern. The tools of OOP (data encapsulation, inheritance, polymorphism,) can be just as useful to radar signal processor developers as they are to user interface developers. They increase the level of abstraction available to the developer, allowing him or her to concentrate more on the solution to a problem and less on the implementation of it. The tools allow the developer to produce truly reusable code, reducing the amount of debugging needed in later projects. The end result can be higher developer productivity and more reliable code. This paper describes an implementation of a complete synthetic aperture radar (SAR) processor in C++. Raw radar data collected using the Norden AN/APG-76 Multi-mode Radar aboard Norden's Gulfstream II test aircraft were used as input to the C++ processor. The processor was evaluated for speed and accuracy in comparison with an equivalent FORTRAN processor and the AN/APG-76 processor. This test indicated that the APG-76 processing speed was equivalent to 70 SGI/MIPS R4000 50/100's programmed in FORTRAN or C++. The ease or difficulties encountered in porting the processor to several machine types are documented. The resulting high-resolution radar image is compared with the AN/APG-76 real-time image. The major classes are described. Rationale for class designs is provided and the overall benefits of OOP are evaluated.<>
一个用c++类实现的面向对象合成孔径雷达处理器
到目前为止,面向对象编程(OOP)最流行的应用程序是处理图形用户界面的应用程序。这并不奇怪。显示器上的可见元素和计算机语言对象之间的关联似乎很自然。然而,在雷达信号处理领域,物体的使用却不太常见。信号处理方面OOP不流行的一个主要原因是人们认为OOP语言生成的执行代码比过程化语言慢。随着OOP语言的成熟和计算机速度的提高,这不再是一个问题。OOP工具(数据封装、继承、多态)对雷达信号处理器开发人员和用户界面开发人员一样有用。它们增加了开发人员可用的抽象级别,使他或她能够更多地关注问题的解决方案,而不是问题的实现。这些工具允许开发人员生成真正可重用的代码,减少以后项目中所需的调试量。最终的结果可能是更高的开发人员生产力和更可靠的代码。本文描述了一个完整的合成孔径雷达(SAR)处理器在c++语言中的实现。使用诺登公司的湾流II测试飞机上的AN/APG-76多模雷达收集的原始雷达数据被用作c++处理器的输入。该处理器与等效FORTRAN处理器和an /APG-76处理器进行了速度和精度评估。测试表明,APG-76的处理速度相当于70台用FORTRAN或c++编程的SGI/MIPS R4000 50/100。在将处理器移植到几种机器类型时遇到的容易或困难都有文档记录。得到的高分辨率雷达图像与AN/APG-76实时图像进行了比较。描述了主要的类。提供了类设计的基本原理,并评估了面向对象的总体优势。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信