A Fully Automated Gridding Technique for Real Composite cDNA Microarray Images

Genome-wide screening using microarrays of DNA will be of great use in the early diagnosis of diseases such as cancer and HIV. It also makes use of gene discovery, pharmacogenomics, toxicogenomics, and nutrigenomics for other applications. A DNA microarray image lays out an orderly arranged specific gene regions called spots. Microarray image analysis consists primarily of preprocessing, spot area gridding, spot segmentation, and intensity extraction. The first two phases are focused on this work: preprocessing and gridding. The experiment is conducted on real composite cDNA microarray images. A composite microarray image is formed by suitably stacking a red channel image and a green channel image acquired from a microarray experiment either in the RGB domain or in the GRB domain. The blue channel is kept as zero. In order to reduce the challenging problems of microarray images, an efficient preprocessing algorithm is proposed here for these composite images. We have developed a fully automated gridding algorithm integrating global subgrid gridding and local gridding of spots. This technique extracts the structural information namely inter-subgrid spacing, inter-spot spacing and spot center position to achieve efficient gridding. The traits of a microarray image are evaluated using three parameters namely Mean square error, Naturalness quality image evaluator and degree of contrast. The accuracy of the experimental results indicates that this combined preprocessing and gridding technique performs better than existing competitive methods in SIB, GEO, SMD and DeRisi datasets which are most commonly used by the research community for microarray image analysis techniques.


I. INTRODUCTION
Microarray is a cutting-edge bioinformatics technology of today. cDNA microarray image analysis is an important part of microarray experimental studies that can potentially have a significant impact on subsequent analyzes such as clustering or detection of differential genes [1]. The basics of DNA, cDNA, DNA chips and cDNA microarray image formation are described in our earlier work [2]. A comprehensive virtual laboratory experiment is available in [3], by which we can investigate the differences between healthy cells and cancer cells using DNA microarray.
Gridding is one of the most important steps in microarray image analysis. This step includes Global gridding and Local gridding. Global gridding assigns coordinates to the The associate editor coordinating the review of this manuscript and approving it for publication was Gulistan Raja . subgrids or sub-arrays in the entire image whereas local gridding assigns coordinates to each of the hybridized or nonhybridized spots within the sub-arrays. The located spot region can be differentiated into the foreground spot region and the background region using the various segmentation rules. Practically, background intensity around the spot is not zero. A suitable background intensity correction method should be done either globally or locally before the extraction of image intensities. Flagging is a procedure to be conducted for removing or marking poor quality intensity features after the spot segmentation. Finally, the generated intensity values will pave the way for the clustering of differentially expressed genes.
A preprocessing stage will enhance the accuracy of gridding, segmentation, intensity extraction, and quantification by reducing the common artifacts present in images. So this stage is unavoidable. Hence we focused on an automated method for preprocessing combined with gridding of the images. Automating this part of the procedure enables highthroughput.
Over the past decades, numerous manual gridding, semiautomatic gridding, and fully automatic gridding techniques have been mentioned in the literature. In manual gridding method, all the parameters mainly number of subgrids, number of spots in each subgrid, and spot sizes required for gridding are provided manually [4]- [7]. However, the semiautomatic gridding method demands the user to input some of the gridding parameters in order to limit the preset variables [8], [9]. Automatic gridding algorithms detect all spots of microarray images without any preset parameters or user intervention. Most automated gridding strategies proposed in the literature are for the spot detection's local grid.
Related works areas in this field are as follows. In 2003, authors used morphological operators to provide horizontal and vertical projections of the image in a morphological mathematical model [10]. This method is simple and computationally fast but susceptible to misalignment due to noise and spurious or missing spots. In 2004, a grid alignment technique [11] was implemented, which is datadriven and uses statistical analysis of 1-D projections of image directional edge features. The approach is stable to row and column-spaced spots irregularly, independent of the spot features and reduces the number of free parameters by algorithms powered by data. The proposed 2006 hill-climbing search [12] is intended to locate a local minimum (or maximum) that continually moves in the direction of the objective function's decreasing (or increasing) value. It is necessary to initialize one or more starting pixels that will affect the final result. In 2006, authors calculated the maximum a priori grid estimate [13] for microarray image bayesian gridding. Radon transform properties are used to obtain the positions of the reference grid. The Genetic Algorithm (GA) [14], [15] implemented in 2008 effectively define line segments, which constitute the boundaries in an image between neighboring subgrids or spots. Though no input parameters or user interaction are needed, GA computation is a slowpoke.
In 2010, authors of [16] found spot detection gridding for M 3 G. The rotation of images is calculated using the radon transform. The SVM classifier is used to create the full grid line between the spot columns and the spot rows. Optimal multilevel threshold gridding (OMTG) [17] established in 2011, applies radon transform to adapt original images to the rotation. The appropriate number of thresholds is found, and a refinement process is used to improve the performance of the system for efficient global gridding and local gridding. In 2013, the approach [18] proposed automated gridding of microarray images of DNA using an optimum sub-image. The gridding lines are determined using the intensity projection profiles from this sub-image. In 2013, authors used their sub-array gridding unit with a modified Otsu algorithm [19], which provides good accuracy with less computational time. For increasing the precision of spot detection, heuristic rules are applied to the grid lines acquired. Using a background estimation process, spot pixels are enhanced before gridding. In 2015, the method [20] described a sub-array gridding technique based on intensity projection profiles following a histogram-based threshold enhancement of pixels. For detecting and correcting grid line errors a refinement technique is applied.
In 2016, a generalized methodology is proposed for the spot addressing of microarray images which include hexagonal or rectangular grid patterns [21], [22]. Hybridized spots are segmented based on simple segmentation rules, and an increasing concentrate polygon (GCP) algorithm detects nonhybridized spots. Eventually, it measures a Voronoi diagram to distinguish each position in a single cell. In 2017 the authors of [23] used microarray images to implement multiple image processing techniques for cancer detection. A complete microarray image analysis is done before the disease diagnosis. Microarray image blocks are identified by the computation sum of pixels in a row/column and taking the local minima. The successive local minima in each subarrays are calculated for spot detection by the period derived from the auto-correlation function applied on the histogram of each block. In 2017 a shape-independent algorithm [24] for fully-automated gridding of cDNA microarray images is implemented to minimize grid line errors. This technique involves finding the subarray in an image by using the Blackman window length variable, Otsu threshold-based image contrast enhancement, and defining image objects such as spots and noise blocks through the 8-connected labeling procedure. In 2018, a Cross covariance approach [25] with a mean image profile is used to compare the known and unknown locations in microarray images. Noisy pixels are removed by using structural processing methods before the gridding stage. In 2019, authors applied an improved Otsu method which is optimized by multilevel thresholds to achieve precise gridding [26]. Multilevel thresholds are obtained using physical information from source microarray images. In 2019, the authors introduced a fully automatic gridding technique [27], applying multi-resolution analysis to obtain horizontal and vertical image projection profiles in global and local grid units. Upon identification of the subarray, an adaptive threshold approach is determined to get the grid lines for locations.
Although many attempts are focused on this particular gridding step, they are almost failed to properly gridding tough images (high-density noisy images, images with a large number of missing spots (non-hybridized spots), lowresolution spots, almost same measurements for subgrid and spot spacing) in the databases. Images in the same databases have a different number of sub-arrays and spots. Sub-array spacing, spot spacing, size and shape of spots are also dissimilar. Images feature with almost the same inter subarray spacing and inter spot spacing can cause an error in global gridding lines. Many of the contrast enhancement methods in the literature boost the noisy pixels along with the spot pixels. Hence, the accuracy of global and local gridding of spots is observed very poorly in high-density noisy images.
Also, some researchers have not used universal microarray databases namely GEO, Derisi, SMD available for developing and testing their methods. Therefore, the performance of their methods in automated gridding cannot be compared.
Our work employs a novel preprocessing method which gives a good contrast with reduced noise effect on highdensity noisy images. The preprocessing work is done on composite images, which combines the advantages of threedimensional (3D) median filtering and the contrast enhancement by dehazing technique. This dehazing technique works well in poor contrast images. The contrast-enhanced image is top-hat filtered to reduce high fluorescent block noise to a large extent. The size of the structuring element is automatically derived from the obtained spot spacing measurement. The proposed fully automated gridding method exploits the structural information (inter subgrid spacing, inter spot spacing, and location of spot centers) from the images so that the algorithm can be automated for different featured microarray databases. The grid lines are calculated in such a way that spots are located in the middle region of their grid compartments (Perfectly gridded). This lessens the error associated with marginally gridded (more than 80% of spot pixels reside in the equivalent compartment) and incorrectly gridded (less than 80% of spot pixels reside in the equivalent compartment) spots. Also, three quality parameters are used to analyze the traits of images which aid the gridding accuracy of perfectly gridded spots in tough images.
The rest of this paper is structured in six sections. Microarray images, their ideal characteristics, and the challenges associated with practical/real images are described with figures in section II. Section III mentions the details of real microarray image corpora used in our methods. Methods and detailed algorithms of preprocessing, global gridding, and local gridding are well explained in section IV. The results of the proposed work and comparison with most competitive works are discussed in section V, while the conclusion is written in section VI.

II. MICROARRAY IMAGE
The microarray experiment's outputs are two high-resolution 16-bit grayscale images in TIFF format, for both the green and red channels. Each image contains regularly arranged unique gene probes called spots. A relative level of gene expression is given by the ratio of gray-level intensities of the red spot to the green spot.

A. CHARACTERISTICS OF AN IDEAL MICROARRAY IMAGE
The ideal microarray image has the following features: (1) All the sub-arrays have the same number of rows and columns, (2) There is no rotation or inclination of spots in horizontal as well as in the vertical direction, (3) Inter subarray spacing and inter spot spacing are regular, (4) Sizes and shapes are the same for all the spots, (5) No dust and other contamination are affected on the microarray slide, (6) A uniform background intensity should remain across the image, (7) Spots should reflect only the true measures of fluorescence intensities of a corresponding dye of interest.

B. CHALLENGES IN REAL MICROARRAY IMAGES
This part addresses the main challenges of real microarray images with illustrations.
Real microarray images exhibit a large dynamic range. It requires 16 bits/pixels whereas 8 bits/pixels are used in natural images. The size of the image/channel varies approximately from 2MB to 120MB which directly depends upon the total number of subgrids and spots immobilized in the DNA chip. Images are of poor contrast and possess variablesized subgrids. All the spots are not clearly detected. This is demonstrated in Fig. 1a. Also, it is visible that the second subgrid size is 5×7 and other subgrids have the dimension of 7 × 7 in the same image. Spots with variable sizes and shapes are shown in Fig. 1b. All are not in circular in shape. The histogram comparison of a natural image, a graphics image, and a microarray image [28] is displayed in Fig. 1c. The pixels in the microarray image use only a smaller fraction of all possible intensities. Also, the prevalence of low-intensity spots pixels with a large background gives a unimodal distribution. Common image enhancement methods like powerlaw transformation and histogram equalization will result in a washed-out image and hence they are not directly suitable on these images. The fifth row of the subgrid image   in Fig. 1d contains a large number of missing spots. This will miss the horizontal grid line due to the low value of mean intensity in that row. A large number of missing spots are often visible in real microarray images. Fig. 1e depicts a contrast-enhanced image with reduced noise effect. However, false and redundant horizontal grid lines are appeared due to the tilt or rotation of subgrids or spots within the images. High-density noise is affected like a spider-web on all the subgrids in the image displayed in Fig. 1f. This is the toughest image named 'Def665Cy5.tif' which causes false global gridding of subgrids and local gridding of spots in our experimental databases. None of the works proposed so far in the literature obtained a 100% accuracy with perfect gridding of spots for the aforementioned image. However, the method proposed in this work gives a 100% accuracy. Most of the microarray images experience a non-uniform background intensity around the spots and sometimes contain block noises similar to the size and the intensity level of real spots. This is a big challenge in the right gridding of spot regions.
Hence, a preprocessing algorithm is inevitable to address all the issues before the image analysis for different applications.

III. DATASETS
Four different cDNA microarray databases that are most commonly used in the literature have been selected for evaluating the performance of the proposed method. Databases are twochannel image datasets. Databases and image features are exhibited in Table 1. Images in the datasets possess different scanning resolutions, inter-subgrid spacing, inter-spot spacing, and spots with different features. All the challenges addressed in section II.B are considered to ratify the flexibility of our proposed method. The first database includes 14 microarray images from the Computational Cancer Genomics (CCG) group of the Swiss Institute of Bioinformatics (SIB) [29]. The images have been named using Def, followed by experiment IDs 661, 662, 663, 664, 665, 666, 667 and channel number is Cy3 or Cy5. Each image contains four subgrids. Subgrids 1, 3 and 4 contain 49 spots and subgrid 2 contains 35 spots.
The second database of 14 images is drawn from Joe DeRisi's individual tiff files [30]. These images correspond to channels 1 and 2 for experiment IDs OD730, OD046, OD014, OD180, OD690, OD080, and OD370. Each image contains four subgrids and each subgrid contains 1,600 spots.
The third database consists of a set of eight images which are selected from Gene Expression Omnibus (GEO) [31]. Images correspond to channels 1 and 2 for experiment IDs GSM15898, GSM16389, GSM16391, and GSM16101. Each image contains 48 subgrids and each subgrid contains 182 spots.
The fourth database provides a set of images drawn from the Stanford Microarray Database (SMD). Each image contains four subgrids and each subgrid contains 289 spots.

IV. METHODS
The proposed methodology includes three main algorithms: Preprocessing Algorithm for image enhancement, Global gridding algorithm to get sub-array regions and Local gridding algorithm for spot regions which will be discussed in detail on the pages concerned. The overall block diagram of the proposed fully automated method is shown in Fig. 2.

A. PROPOSED PREPROCESSING ALGORITHM FOR COMPOSITE IMAGES
The major steps of the preprocessing algorithm are listed in Algorithm 1. Initially, a composite image is made by suitably stacking as [Red channel, Green channel, Blue Channel] or as [Green channel, Red channel, Blue Channel]. There is no blue channel for microarray images, hence it is kept as zero planes. Exchange of Red plane and Green plane is done based on the mse r or mse g values mentioned in steps 1, 2 and 3 of Algorithm 1. This stacking of planes can form a composite image that exploits the advantages of median filtering in the 3D domain. The Signal Processing Toolbox in Matlab computing environment allows the easy computation of 3D median filtering. The obtained median values are position-dependent and relative to the stacking of Red and Green planes. This is done in step 4. The results of 3D median filtering are displayed in Fig. 3. The noise effect is considerably decreased in the GRB domain than in the RGB domain after the 3D median filtering for the image Def665. This is visually justified in Figs. 3 d, and 3 e. The converted image back to the RGB domain after the filtering is depicted in Fig. 3 f. Contrast enhancement is implemented by using the dehazing algorithm [32] implemented for low light images in [33]. Obviously, microarray images are of poor contrast. All the spots in the image are not equally visible and are analogous to a low light image scene contents.
It is noted that the histogram of a low light image in the complemented version is similar to the histogram of a hazy image. Therefore, step 5 in Algorithm 1 is done. The resultant image from step 5 is converted into grayscale in step 6. In step 7, rotation adjustment is done by using radon transform to minimize the tilt within subgrids and spots. These types of rotations are often visible in microarray images within a certain angle range. Radon coefficients for each deviation angle are normalized and entropy is calculated. The best rotation angles are chosen based on the minimum value of entropy. An affine map is created for the anti-rotation which uses the derived best rotation angles in x and y direction to spatially transform the input image. This is explained in [17]. Extra boosting of contrast is again done by sharpening the image in step 8.
Step 9 gives a preprocessed image z, which is 3D median filtered, contrast-enhanced, and tilt corrected image in 2D.
Composite images in 3D are generated mainly to exploit the benefits of 3D median filtering and contrast enhancement by haze removing algorithm.

B. MODIFIED PROJECTION PROFILE TECHNIQUE
The projection profile technique endeavors the structural data of microarrays. Microarrays generally hold the regular grid of spots. The mean intensity for each column of the image will give an estimation of the number of spot centers and allows the calculation of inter-spacing between the spots. A horizontal intensity projection profile gives the number of vertical separators or grid lines. Similarly, a vertical intensity projection profile gives the number of horizontal grid lines.

1) STEPS FOR CREATING HORIZONTAL INTENSITY PROFILE FOR VERTICAL SEPARATORS
Horizontal intensity profile is calculated by (1), where [r, c] = size(z). The auto-correlation is taken to enhance the self-similarity by reducing the irregularities in the profile. This is illustrated in Fig. 4 and in Fig. 5.
The estimated period for spot spacing can be found by taking the median value of differences of peaks.

2) REMOVING BACKGROUND NOISE BY MORPHOLOGICAL TOP-HAT FILTERING METHOD
Top-hat filtering can be exploited to rectify uneven illumination when the background is dark. The structuring element used here is a flat linear structuring element 'SE' with the length of line the same as the estimated period computed. The image 'z' in step 9 of Algorithm 1 is top-hat filtered, and followed by median filtered in order to reduce the effect of high-density block noises generated in the microarray experiment as well as during the image acquisition time. Amplified noise after the contrast enhancement also will be mitigated in this stage. The resultant image can be named  Fig. 7. HE works on the entire image and enhances the overall contrast of the image. This method gives a washed-out image in microarray image datasets and hence they are not directly suitable. CLAHE boosts the contrast of small tiles or regions of the image so that the histogram of the output region approximately matches the required histogram. However, this enhancement method is not at all good enough to provide a sufficient contrast level for spots and background in the microarray images. The horizontal intensity profile is again calculated on 'z e ' by (1) and top-hat filtered using the same structuring element 'SE' to obtain an enhanced profile.

3) SEGMENT PEAKS AND LOCATE CENTERS
The enhanced profile is segmented by Otsu's method. Otsu method computes a global threshold level to minimize the intra-class variance of the thresholded white and black pixels. This is a good example of the image processing techniques that are often useful when analyzing 1D data [34]. Each peak region of the binarized image can be numbered and corresponding centroids can be extracted. These centroids conform to horizontal centers 'xCenters' of the spots. The middle points between adjacent horizontal centers provide vertical grid point locations. Image is transposed and the aforementioned steps are repeated for achieving the vertical intensity profile, yCenters, and the horizontal separators.
Original and enhanced horizontal and vertical profiles of Def665 are shown in Fig. 8. Enhanced profiles got clean and anchored peaks with regular spot spacings when they are compared to their original profiles. We illustrated most of the resultant figures of image Def665. This image is the most challenging image in the Step 2: Check mse(x 1 , x m1 ) and mse(x 2 , x m2 ); let mse r ← mse(x 1 , x m1 ) and mse g ← mse(x 2 , x m2 ) Step 3: if (mse r ≤ mse g ) then stacking image planes to get composite image; Step 5: Contrast Enhancement is done by using dehazing algorithm [32] implemented for low light images [33]; (x 3 converted back to RGB domain after Step 4) Do complement of x 3 Apply haze removal Take complement again to get back the resultant image in RGB domain (original domain) Step 6: Convert resultant image into its grayscale version x 3g Step 7: x 3g is tilt corrected using the technique implemented in [17] Step 8: Find the edge features using a high pass filter on the resultant image and get the sharpened image.
Step 9: Add the resultant image and sharpened image. Final Preprocessed image z is denoised, tilt corrected and contrast-enhanced image in 2D SIB dataset which is not globally gridded 100% and locally gridded 100% by anybody to the best of our knowledge.

C. QUALITY PARAMETERS APPLIED TO ANALYZE THE TRAITS OF IMAGES
The following three quality parameters are used to analyze the traits of images in the databases.

1) Mean-Squared Error (MSE):
Calculates the meansquared error (mse r / mse g ) between red/green channel images and their corresponding median filtered images. It is used in switching to RGB/GRB domain before the effective 3D median filtering. 2) Naturalness image quality evaluator (NIQE): This Noreference image quality score [35] calculates the niqe score with respect to a custom niqe MODEL computed for microarray images using the FITNIQE function in Matlab. The MODEL contains visually good images in equal proportion from the experimental databases. NIQE value is used to understand the perceptual quality difference of an enhanced image from the source image. The enhanced image is more similar to the source image if the NIQE value of the enhanced image is more close to that of the source image (contrast enhancement in Algorithm 1 for 'z e is not adequate and need extra boosting). 3) Contrast degree (RMS C ): RMS contrast uses the standard deviation of the image and is computed by (2). RMS C of the source image (gray-scale) and enhanced image are found. Some enhanced images still cause grid line errors. It is believed that the level of enhancement is not adequate in those images. We will be multiplying a scale of contrast difference (Cont diff ) to those enhanced images by analyzing their Niqe diff values (Niqe diff = Niqe new − Niqe old ). If Niqe diff is less than a particular threshold (empirically optimized), that 'z e ' is extra boosted in contrast value.
I is the average intensity of all pixel values in the image and MN is the product of the number of rows and the number of columns in the image. The values obtained for each image are listed in Table 2. Also, the best rotation angles computed by radon transform technique in x and y directions to minimize the tilt are added in Table 2.
Refine dist_x ← differences of new xCenters; Step 3: Calculate an array n_x of distances greater than spot_x; Step 4: Find a threshold to get sub-array spacings l_xm ← mean (unique (n_x)) step 5: Find xCenters corresponding to sub-array spacings Let c ← 1; Assign gxc(c) ← xCenters(1); gxc(end) ← xCenters(end); c ← 2; Step 6: Obtain the average of sub-array spacings SubgridDist_X ← mean(dist_xx) Step 7: Calculating global grid points xG(1) ← gxc(1) − SubgridDist_X /2; xG(2 : length(gxc)) ← gxc(2 : end)+ SubgridDist_X /2 and these should be removed before the global gridding. Three such points will be checked and deleted based on the condition in step 2. Here, dist_x is the difference between xCenters and spot_x is the average spot gap between the spots. We have checked the initial 3 point's (xCenters) spot gap in dist_x. If the point is less than t_x1 or greater than t_x2, then that is not a valid point. Ideally, the threshold points t_x1 and t_x2 should be spot_x equivalent. But we can not give the ideal measure in real images. Hence, 20 mm offset to spot_x is experimentally determined and hence selected for all the images in the four datasets. An example of plotting noisy and refined xCenters is illustrated in Fig. 9. Then dist_x is updated with the refined inter spot spacings of xCenters. Usually, sub-array spacings are greater than the spot spacings. In order to get correct sub-array spacings, a new threshold l_xm is calculated in steps 3 and 4. Since the noisy points are already removed in step 2, xCenters (1) and xCenters(end) will be the new beginning and endpoints of global xCenters (gxc(1) and gxc(end)). Distances or spacings greater than l_xm are counted as sub-array spacings in the loop in step 5 and are stored in an array dist_xx. The remaining global xCenters corresponding to dist_xx are also taken in the same loop. SubgridDist_X is calculated as the mean of dist_xx in step 6. The scale of SubgridDist_X is added to each global xCenters in step 7 to align subarrays effectively within the middle region of the global grid compartments.
In step 7, xG gives the vertical grid lines for sub-arrays. Similarly yG can be obtained for horizontal grid lines using the above algorithm by loading yCenters. Region of interest (ROI ) around each subarray is a 4 element vector. It contains positions in x and y directions with sizes dx and dy.

E. PROPOSED LOCAL GRIDDING
Major steps of the Local gridding algorithm are listed in Algorithm 3. Steps 1 and 2 do the procedure as in the same steps of the global gridding algorithm. Load the xCenters from subgrid's ROI's and find the optimal spot spacing spot_x as seen in step 1. In step 2, threshold values tloc_x1 (lower limit) and tloc_x2 (upper limit) are obtained from the spot_x to obtain the correct grid lines. Here, 5 mm offset to spot_x is experimentally determined and hence selected for all the images in the four datasets. All adjacent xCenters are considered correct points if their separation distance is within the defined lower and upper limits. First and endpoints are checked based on the conditions in step 2 to identify the noisy xCenters. xCenters (1) is taken into the new variable locx (1) to continue the remaining steps.
Step 3 does the following cases to regulate the grid line for proper gridding of all of the spots. Case 1: if dist_x(i) is within the limits of tloc_x1 and tloc_x2, then the next xCenters(i + 1) is the correct point and will be considered. Case 2: if dist_x(i) is lesser than the lower limit tloc_x1 and dist_x(i + 1) is within the limits of tloc_x1 and tloc_x2, then current point and next point should be considered. This will be executed in an algorithm when the variable count ← 1. Case 3: if both dist_x(i) and dist_x(i + 1) are lesser than the tloc_x1, then xCenters(i + 1) is assumed as a noisy point and i is incremented by one to take the next xCenters(i + 1). This happens when count ← 2 in the algorithm. Case 4: if dist_x(i) is greater than tloc_x2, obviously one or more xCenters are missed between adjacent points. We will calculate the number of points missed by the equation num ← round(dist_x(i)/spot_x), and correspond-ing points will be introduced in the loop for the equation locx(j) ← xCenters(i + 1) − check * spot_x. Hence, the proposed technique is appropriate to microarray images gridding with different levels of hybridization, and in the absence of spots. The obtained locx are re-assigned back to xCenters.
Step 4 finds the distances to be added to that xCenters to obtain the grid lines. The grid lines are computed in step 5 in such a way that the points are residing within the middle region of each grid compartment.
In step 5, xGrid gives the vertical grid lines for the spots. Similarly, yGrid can be obtained for horizontal grid lines using the above algorithm by loading yCenters.

V. RESULTS AND DISCUSSION
Three types of noises namely Salt and pepper noise, Poisson noise, and Gaussian noise are commonly found in the microarray images. Sparsely occurring white pixels in dark areas and black pixels in white areas can be eliminated by a median filter. This noise is mainly because of high transients in the signal that results in ADC errors during the conversion from an analog signal to a digitized image. Poisson noise is associated with the variation of the number of photons sensed at a given exposure level. The exposure level is defined by green and red wavelengths of laser medium to the corresponding dyes of normal and abnormal DNA samples. The photomultiplier tubes in the image acquisition system multiply the number of electrons of sensed photons from the DNA chip which creates high amplification noise (considered as Gaussian noise) in order to enhance the low light conditions. The preprocessing algorithm proposed in Algorithm 1 gives 'z' which is top-hat filtered, and followed by median filtered to give a denoised and enhanced image 'z e '.
This 'z e ' is passed to the Global gridding stage. Global gridding lines vertical (V), horizontal (H) are calculated in the horizontal and in the vertical direction according to Algorithm 2. The measurements obtained from the Global gridding algorithm is provided in Table 3. The required, obtained correct, obtained false and obtained total V, H lines for each image in the four databases are computed. Also, average inter-subgrid distances in x and y direction are added in the table. The accuracy of global gridding lines is computed by (3).
The comparison of our global gridding results with previous works which used the same datasets are displayed in Table 4. The authors in [27] proposed a fully automatic gridding algorithm and had worked on the Derisi dataset. However, they only gave the local gridding results of that dataset. SMD [1] used in our work is different from SMD [2] used in the literature. Both are SMD microarray databases with different numbers of sub-arrays, spots, and other features.  Since SMD [2] is not available for our work, we neglected the comparison of SMD's results in local gridding results and discussion. The resultant figures after the global gridding are exhibited in Fig. 10. Global gridding results are all plotted on corresponding enhanced images 'z e 's. A source image is the grayscale version of the RGB image obtained from the original red channel and green channel images. ROI around each sub-array is a 4 element vector which can be calculated using horizontal and vertical grid lines attained from the global gridding stage.
ROIs of sub-arrays are automatically passed into the local gridding stage. Local gridding lines are computed according to Algorithm 3. Measurements from the local gridding algorithm are listed in Table 5. The total number of spots (T) is the overall number of spots in the entire image. True Positive (TP) is the number of spots that are perfectly gridded. False Positive (FP) is the number of background regions that are wrongly gridded as spot blocks. The number of spots missed and considered as the background is counted in False Negative (FN). In our work, 0% is the FP rate. 21 spots  each from sub-array 1 and 3 of Def 664 are missed and fallen into the FN group due to the false top horizontal global gridding line. This is depicted in Fig. 11. Image Def664 is globally gridded 98% and locally gridded 76.93% with our method. Image Def665 is globally and locally gridded with 100% and is displayed in Fig. 12. Once the gridding is perfectly aligned, the grid lines can be superimposed on source images or enhanced images. Fig. 13 and Fig. 14 shows the local gridding results of images from Derisi and GEO datasets. The number of FN is more observed in the GEO dataset. A large number of spots in the top as well as in the bottom lines of sub-arrays in the GEO dataset are missed due to the low value of horizontal mean intensity in those lines. A comparison in terms of accuracy with most competitive works is shown in Table 6. This is also illustrated in bar diagrams in Fig. 15. The authors of [10], [17] and [27] did gridding on entire images and authors of [14], [19] and [20] worked on cropped subgrids.
In our work, the accuracy of perfectly gridded spots is only taken into the account. The accuracy of local gridding lines VOLUME 8, 2020  is defined by (4).
Accuracy for each image is given independently in The proposed entire algorithm is appropriate to microarray images gridding with different levels of hybridization and in the absence of spots. All the experimental databases have different levels of spot hybridization. Every spot intensity is proportional to that particular spot's degree of hybridization of green-colored genes (control genes) and red-colored genes (test genes). The absence of a spot or missing spot is due to the lack of that particular gene being hybridized. This algorithm works effectively in a single row/column in a sub-array for the case of a large number of missing spots or non-hybridized spots. GEO databases have a lot of sub-arrays, with a lot of missed spots. Even with that database, we got a better gridding accuracy than the existing methods.

A. COMPUTATIONAL EFFICIENCY PERFORMANCE
Microarray image-oriented analysis is usually not performed in real-time. The importance lies more on how easily and correctly we can interpret the intensity values of the microar-  ray spots given the noises and artifacts that occur from experimental variations and inappropriate imaging conditions. After acquiring or storing the data, the image analysis can be done offline. We have computed and executed our algorithms in Matlab R2018b and ran on an Intel-based workstation with clock speed at 3.30 GHz. The operating system is Windows 10 Pro edition with 16 GB installed RAM. The average processing time of the entire image (complete spots in a red channel image and in a green channel image) of the proposed fully automated technique is calculated as 3.5 seconds for the SIB dataset, 6 seconds for the DeRisi dataset, 30 seconds for the GEO dataset and 12 seconds for the SMD     dataset respectively. That is shown in Table 7. Matlab tictoc commands are used to find the elapsed time for the four experimental datasets to implement the proposed technique in full. Quality in computational efficiency differs with various datasets, software and device configurations for microarray images. Therefore, the processing speed is different. Due to the non-availability of the complete algorithm/codes of other state-of-the-art methods, we could not compare the processing time of our method with those methods. Moreover, in most of the available methods, a fully automated gridding algorithm on an entire image is not developed (only the average processing speed for a single spot in a sub-array or for a single sub-array is calculated).

VI. CONCLUSION
In this work, a composite microarray image is formed by suitably stacking red and green channels to make the whole image analysis algorithm computationally efficient. The proposed preprocessing method, which combines the advantages of median filtering in the 3D domain and contrast enhancement by dehazing, increases the contrast of the entire image with reduced noise effect. The resultant enhanced image after tophat filtering and median filtering attains a better contrast with the reduced effect of noise amplification. Many of the fully automated works available in the literature are based on the cropped subgrids of images. The proposed fully automatic algorithm for global gridding combined with local gridding uses the structural information as features to obtain the correct gridding lines. Gridline management is performed in a row/column of an image to find the missing spots or the nonhybridized spots. Hence, the proposed technique is appropriate to microarray images gridding with different levels of hybridization, and in the absence of spots. The traits of a microarray image are evaluated using three parameters namely Mean square error, Naturalness quality image evaluator and degree of contrast. No user intervention or preset parameters are introduced in the proposed method. Tough images in SIB, DeRisi, GEO, and SMD are gridded with better accuracy than the previous works in the literature. We obtained a 0% false positive (FP) rate for the experimental datasets using the proposed method. The highest global gridding accuracy of the SIB dataset reported so far is 89. 29% [27] whereas proposed method gives 98% accuracy. Also, we achieved 2.11%, 1.67% and .03% improvement in local gridding accuracy for SIB, Derisi and GEO datasets than the aforementioned latest work.