DIP & GIS Software Systems: An overview Nirmal Kumar
Two types of data:•Analog: e.g., topo sheet, aerial photo•Digital: e.g., satellite data Requires DIP Systems: •Computer hardware •Image processing softwareElements of visual imageinterpretation & optical instrumentssuch as stereoscopes
Digital Image Processing System Considerations Hardware Software• CPU • OS• RAM Expert • Software Compiler• Display • Image Processing• Storage Software• Network
CPU: Confused?? Processor Architecture: 32/64 bit • This basically means that the processor can process internally either 32 bits or 64 bits of data at any one time.Processor Clock Speed : • Dictates how fast the processor can process the data (0s and 1s). • If a processor is having a speed of 2GHz, this means that it can process data internally 2 billion times a second (every clock cycle). •If the processor is a 32-bit processor running at 2GHz then it can potentially process 32 bits of data simultaneously, 2 billion times a second !!
CPU:Front Side Bus (FSB): • The front side bus transfers data between the processor and the computers other components such as memory, hard drives, etc. • The FSB will have a certain width (measured in bits) which dictates how many bits can be transferred at any one time. • The FSB also has a clock cycle frequency indicating how fast the data can be transferred. • For example a processor having a FSB width of 32-bits and running at 533MHz, can transfer a set of 32-bits of data, 533,000,000 times a second.Instruction Sets: • The type of work a processor carries out is defined by its instructions. All modern processors have their own instructions built-in for common tasks. CISC (Complex Instruction Set Computer): PCs • More internal instructions, allowing a more diverse set of operations. • Generally slower due to the complexity of the instructions. RISC (Reduced Instruction Set Computer): Work stations • Fewer built-in instructions • Add to the overall speed of the processor due to the simplicity of the instructions
Memory:When the processor needs to execute an instruction, it looks firstin its own data registers. If the needed data isnt there, it goes tothe L1 cache (SRAM) and then to the L2 cache (DRAM). If thedata isnt in any cache, the CPU calls out to the main RAM. Itmight not even be there, in which case the system has to retrieveit from the disk.e.g.,•All Intel Core i7 processors feature L1, L2, and shared L3 caches.•Before, Intel Core 2 Duo and Quad processors had just an L1 and L2 cache. Processor Clock Speed (GHz) Cores L1 L2 L3 Core i7-990X 3.47 6 384KB 1.5 MB 12 MB Core i7-975 3.33 4 256 KB 1 MB 8 MB
Storage: SPOT 3 HRV XS 3000rows × 3000columns × 3bands multispectral = 27 Mb 60x60 km scene 1000000 3 bands 8 bit 20x20 m resolution 5666rows × 6166columns × 7bands Landsat ETM+ = 244 Mb 1000000 185x170 km scene 7 bands 8 bit 30x30 m resolution
Display: Resolution: •Most monitors today are capable of changing their displayed resolution under software control •Maximum resolution that a monitor can display is limited by the size of the monitor and the characteristics of the CRT (cathode-ray tube) 14" 15" 17" 19" 21" 640x480 BEST GOOD TOO BIG HUGE TERRIBLE 800x600 GOOD BEST GOOD TOO BIG HUGE TOO 1024x768 GOOD BEST GOOD STILL GOOD SMALL 1280x1024 TINY TOO SMALL GOOD BEST GOOD1600x1200 TERRIBLE TINY TOO SMALL GOOD BEST BIT DEPTH COLOR RESOLUTION Colour: 1-bit 2 colors 2-bit 4 colors •4 standard color depths used by monitors: 4-bit 3-bit 8 colors (Standard VGA), 8-bit (256-Color Mode), 16-bit 4-bit 16 colors (High Color),and 24-bit (True Color). 5-bit 32 colors 6-bit 64 colors 7-bit 128 colors 8-bit 256 colors 16-bit 65,536 colors 24-bit 16,777,215 colors
Sorry!!!!!I am having Only 24 12 bit bit displayimage!!!!!!
Operating System: • Single user OS: e.g., MS Window XP (HE), Macintosh OS • Network OS: e.g., Microsoft Windows Server 2003, Microsoft Windows Server 2008, UNIX, Linux, Mac OS X, and Novell NetWare.Compiler: A computer software compiler translates instructions programmed in a high level language such as C++ or visual basics in to machine language that the CPU can understand. Many DIP softwares provide a toolkit that programmers can use to compile their own DIP algorithms. e.g., ERDAS, ER Mapper, ENVI
Information Extraction• Univariate and multivariate statistical analysis• Supervised classification (Minimum distance, Maximum likelyhood, Mahalanobis, Parallelepiped, Spectral angle Mapper, Spectral Information Divergence)• Decision tree, regression tree, Binary encoding, Support Vector Machine, Neural network, Fuzzy logic classification• Unsupervised classification• Contextual classification• Incorporation of ancillary data during classification• Radar image processing• Hyper-spectral data analysis• LIDAR data analysis• Subpixel classification
Important Image Processing Functions: Photogrammetric Information extraction • Soft copy photogrammetry to extract digital elevation models • Soft copy photogramemtry to extract orthophotographs • Soft copy extraction of polarimetric details Geographic Information Systems (GIS) • Raster (image) based GIS • Vector (polygon) based GIS (must allow polygon comparison) Integrated Image Processing and GIS • Complete Image Processing Systems • Complete Image Processing Systems and GIS Utilities • Network (Internet, local talk, etc.) • Image compression • Import and export of various file formats
Software, HQ special strengthERDAS (Atlanta, USA: 1979) – vector integrationPCI (Toronto, Canada: 1982) – orthophotos / breadthENVI (Boulder, USA: 1991) – hyperspectralER Mapper (Perth, Australia:) - image web server…. now part of ERDAS (2007)TNTMips (USA) - DigitizationDefiniens Developer (Trimble, Germany) – Object based classification
Open Source DIP & GIS Softwares:ILWIS - Remote Sensing and GIS softwareIntegrated Land and Water Information System (ILWIS) Key features • Integrated raster and vector design • Import and export of widely used data formats • On-screen and tablet digitizing • Comprehensive set of image processing tools • Orthophoto, image georeferencing, transformation and mosaicing • Advanced modeling and spatial data analysis • 3D visualization with interactive editing for optimal view findings • Rich projection and coordinate system library • Geo-statisitical analyses, with Kriging for improved interpolation • Production and visualization of stereo image pairs • Spatial Multiple Criteria Evaluation • Set of operations on DEMs/DTMs and hydrological processing • Variable Threshold Computation, to help preparing a threshold map for drainage network extraction • Horton Statistics,to calculate the number of streams, the average stream length, the average area of catchments for Strahler stream orders • Georeference editors
Open Source DIP & GIS Softwares:Geographic Resources Analysis Support System • Commonly referred to as GRASS, this is a free Geographic Information System (GIS) used for geospatial data management and analysis, image processing, graphics/maps production, spatial modeling, and visualization. • GRASS contains over 350 programs and tools • GRASS uses both an intuitive windows interface as well as command line syntax for ease of operations. • GRASS is currently used in academic and commercial settings around the world, as well as by many governmental agencies and environmental consulting companies.• Quantum GIS (QGIS) is a Geographic Information System (GIS) built for Linux/Unix.• QGIS supports vector, raster, and database formats. • MapServer is an OpenSource development environment for constructing spatially enabled Internet-web applications.
Open Source DIP & GIS Softwares:• Coded in the widespread and powerful C++ programming language• Object oriented system design• Run on MS-Windows as well as with Linux.• > 300 modules for Vector & Raster processing.• Powerful Geostatistical module.• Digital terrain analysis• LIDAR data analysis• GUI & Scripting in Command Line Interpreter
Matlab Programming: • Image Processing Toolbox™ provides a comprehensive set of reference- standard algorithms and graphical tools for image processing, analysis, visualization, and algorithm development. • You can perform image enhancement, image deblurring, feature detection, noise reduction, image segmentation, spatial transformations, and image registration. • Many functions in the toolbox are multithreaded to take advantage of multicore and multiprocessor computers. Diffs = zeros(rmax, cmax-1); for row = 1:rmax; for col = 1:cmax-1; Diffs(row, col) = Image(row, col+1) - Image(row, col); end end imshow(Diffs, );