The Hexagonal Efficient Coordinate System (HECS) (formerly known as Array Set Addressing or ASA) is a coordinate system for hexagonal grids that allows hexagonally sampled images to be efficiently stored and processed on digital systems. HECS represents the hexagonal grid as a set of two interleaved rectangular sub-arrays, which can be addressed by normal integer row and column coordinates and are distinguished with a single binary coordinate. Hexagonal sampling is the optimal approach for isotropically band-limited two-dimensional signals[1] and its use provides a sampling efficiency improvement of 13.4% over rectangular sampling. The HECS system enables the use of hexagonal sampling for digital imaging applications without requiring significant additional processing to address the hexagonal array.[2]
Introduction
editThe advantages of sampling on a hexagonal grid instead of the standard rectangular grid for digital imaging applications include: more efficient sampling, consistent connectivity, equidistant neighboring pixels, greater angular resolution, and higher circular symmetry.[3][4][5] Sometimes, more than one of these advantages compound together, thereby increasing the efficiency by 50% in terms of computation and storage when compared to rectangular sampling.[6] Researchers have shown[1][6][7] that the hexagonal grid is the optimal sampling lattice and its use provides a sampling efficiency improvement of 13.4% over rectangular sampling for isotropically band-limited two-dimensional signals. Despite all of these advantages of hexagonal sampling over rectangular sampling, its application has been limited because of the lack of an efficient coordinate system.[8] However that limitation has been removed with the recent development of HECS.
Hexagonal Efficient Coordinate System
editDescription
editThe Hexagonal Efficient Coordinate System (HECS) is based on the idea of representing the hexagonal grid as a set of two rectangular arrays which can be individually indexed using familiar integer-valued row and column indices. The arrays are distinguished using a single binary coordinate so that a full address for any point on the hexagonal grid is uniquely represented by three coordinates
- ℤ ℤ
where the coordinates represent the array, row, and column, respectively. The hexagonal grid is separated into rectangular arrays by taking every other row as one array and the remaining rows as the other array, as shown in the figure.
Nearest Neighbors
editThe addresses of the nearest neighbors of a pixel (or grid point) are easily determined by simple expressions which are functions of the pixel’s coordinates, as shown.
Convert to Cartesian
editConverting coordinates in HECS to their Cartesian counterparts is done with a simple matrix multiplication
- .
Operators
editPreliminaries
editLet the set of all possible HECS addresses be ℤ ℤ.
- .
- .
- ℕ.
Addition
editA binary addition operator has been defined as
where is the logical XOR operator and is the logical AND operator.
Negation
editA unary negation operator has been defined as
- .
Subtraction
editA binary subtraction operator has been defined by combining the negation and addition operations as
- .
Scalar Multiplication
editScalar multiplication has been defined for non-negative integer scalars multipliers as
and
- .
Separable Fourier Kernel
editThe hexagonal discrete Fourier transform (HDFT) was developed by Mersereau[6] and was converted to an HECS representation by Rummelt.[2] Let be a two-dimensional hexagonally sampled signal and let both arrays be of size x . Let, be the Fourier transform of x. The HDFT equation for the forward transform is given by
Notice that the HECS representation of the HDFT overcomes Mersereau's "insurmountable difficulty" since it is a separable kernel, which led to the development of the Hexagonal Fast Fourier Transform[9].
Alternative Addressing Schemes
editThere have been several attempts to develop efficient coordinate systems for the hexagonal grid. Snyder[4] describes a coordinate system based on non-orthogonal bases which is referred to as the h2 system. Her[10] developed an interesting three coordinate system that uses an oblique plane in three dimensional space. For various reasons, both of these approaches require cumbersome machine representations that lead to inefficient image processing operations.[8] General Balanced Ternary (GBT) is based on a hierarchy of cells, where at every level the cells are each aggregates of cells from the previous level.[11] In two-dimensions, GBT can be used to address the hexagonal grid where each grid point is addressed with a string of base-7 digits and each digit indicates the hexagon's position within that level of the hierarchy.[12] The use of GBT and slightly modified versions of GBT such as HIP[13] and Spiral Architecture[14] for addressing hexagonal grids in two dimensions are abundant in the literature.[5][13][14][15] While these approaches have some interesting mathematical properties, they fail to be convenient or efficient for image processing.[8]
Other 2D Hexagonal Grid Applications
editAlthough HECS was developed mainly for digital image processing of hexagonally sampled images, its benefits extend to other applications such as finding the shortest path distance and shortest path routing between points in hexagonal interconnection networks.[8] Other addressing approaches have been developed for such applications[16][17][18] but they suffer the same drawbacks as the ones described above.[8]
References
edit- ^ a b D. P. Petersen and D. Middleton, Dec. 1962, "Sampling and reconstruction of wave-number-limited functions in n-dimensional Euclidean spaces", Inf. Control, vol. 5, no. 4, pp. 279–323
- ^ a b Nicholas I. Rummelt, 2010, Array Set Addressing: Enabling Efficient Hexagonally Sampled Image Processing, Ph.D. thesis, University of Florida
- ^ X. He and W. Jia, 2005, "Hexagonal structure for intelligent vision", in Proc. 1st Int. Conf. Information and Communication Technologies, pp. 52–64
- ^ a b W. E. Snyder, 1999, H. Qi, and W. Sander, "A coordinate system for hexagonal pixels", in Proc. SPIE Medical Imaging: Image Processing, vol. 3661, pp. 716–727
- ^ a b J. W. van Roessel, “Conversion of Cartesian coordinates from and to generalized balanced ternary addresses,” Photogramm. Eng. Remote Sens. 54, 1565–1570 (1988)
- ^ a b c R. M. Mersereau, June 1979, "The Processing of Hexagonally Sampled Two-Dimensional Signals", Proceedings of the IEEE, vol. 67, no. 6, pp. 930–949
- ^ R. Vitulli, U. Del Bello, P. Armbruster, S. Baronti, and L. Santurti, “Aliasing effects mitigation by optimized sampling grids and impact on image acquisition chains,” in Proc. IEEE Geosci. Remote Sensing Symposium, Vol. 2, pp. 979–981 (2002)
- ^ a b c d e Nicholas I. Rummelt and Joseph N. Wilson "Array set addressing: enabling technology for the efficient processing of hexagonally sampled imagery," Journal of Electronic Imaging 20(2), 023012 (1 April 2011). https://doi.org/10.1117/1.3589306
- ^ James B. Birdsong, Nicholas I. Rummelt, "The Hexagonal Fast Fourier Transform", 2016 IEEE International Conference on Image Processing (ICIP), pp. 1809–1812, doi:10.1109/ICIP.2016.7532670
- ^ I. Her, “A symmetrical coordinate frame on the hexagonal grid for computer graphics and vision,” J. Mech. Des. 115, 447–449 (1993)
- ^ D. Lucas and L. Gibson, “A system for hierarchical addressing in Euclidean space,” Interactive Systems Corporation (1980).
- ^ L. Gibson and C. Lenzmeier, “A hierarchical pattern extraction system for hexagonally sampled images,” Tech. Rep., Final Report for Contract F49620-81-C-0039, U.S. Air Force Office of Scientific Research, Interactive Systems Corporation (1981)
- ^ a b L. Middleton and J. Sivaswamy, Hexagonal Image Processing: A Practical Approach (Springer, London, 2005)
- ^ a b P. Sheridan, “Spiral architecture for machine vision,” Ph.D. thesis, Univ. of Technology Sydney (1996)
- ^ A. Vince and X. Zheng, “Computing the discrete Fourier transform on a hexagonal lattice,” J. Math. Imaging Vision 28, 125–133 (2007)
- ^ J. Carle and J. Myouop, “Topological properties and optimal routing algorithms for three dimensional hexagonal networks,” in Proc. 4th Int. Conf./Exhib. on High Performance Computing in the Asia-Pacific Region, Vol. 1, pp. 116–121 (2000).
- ^ F. Garcia Nocetti, I. Stojmenovic, and J. Zhang, “Addressing and routing in hexagonal networks with applications for tracking mobile users and connection rerouting in cellular networks,” IEEE Trans. Parallel Distrib. Syst. 13, 963–971 (2002).
- ^ M. He and W. Xiao, “A unified addressing schema for hexagonal and honeycomb networks with isomorphic cayley graphs,” in Proc. 1st Int. Multi-Symp. on Computer and Computational Sciences (IMSCCS ’06), Vol. 1, pp. 363–368 (2006).