IQ diagram utilization in a novel modulation classification technique for cognitive radio applications
 Okhtay Azarmanesh^{1}Email author and
 Sven G Bilén^{1}
https://doi.org/10.1186/168714992013289
© Azarmanesh and Bilén; licensee Springer. 2013
Received: 25 July 2013
Accepted: 4 December 2013
Published: 20 December 2013
Abstract
We report here on the utilization of signal inphasequadrature (IQ) diagrams in a novel modulation classification (MC) technique. This MC technique is able to classify linear digital singlecarrier modulations as well as multicarrier modulations. The method uses the waveforms’ IQ diagrams and, by employing a combination of kcenter and kmeans algorithms, determines the type of modulation. Implementation and refinement of the novel singlecarrier modulation classification technique using the IQ diagrams are discussed in detail. Further, a model for classification of multicarrier signals is presented, including Gaussianity, cyclostationarity, and autocorrelation tests for further extracting orthogonal frequency division multiplexing signal parameters. Finally, results of this method are presented and compared to other classification methods, and the considerations for implementing the method in hardware are briefly discussed. As a future direction of this research, the performance of the algorithm in fading channels is an interesting topic to pursue.
1 Introduction
One of the most promising new technologies for utilizing radio spectrum efficiently is cognitive radio. A cognitive radio (CR) is defined [1] as ‘an intelligent wireless communication system that is aware of its surrounding environment, learns from the environment, and adapts its internal states to statistical variations in the incoming RF stimuli by making corresponding changes in certain operating parameters (e.g., transmit power, carrier frequency, and modulation strategy) in real time, with two primary objectives: highly reliable communications whenever and wherever needed; and efficient utilization of the radio spectrum’.
The interest in developing new spectrum utilization technologies – combined with both the introduction of softwaredefined radios (SDRs) and the realization that machine learning can be applied to radios – is creating intriguing possibilities for promising technologies that are being incorporated in CRs.
There are a number of MC methods reported in the literature and most of the current modulation classifiers can be categorized into two main groups: likelihoodbased (LB) and featurebased (FB) classifiers [2].
Initial attempts to implement MC algorithms, circa 1980 [3], used analogmodulated signal timedomain parameters to accomplish automatic modulation recognition. Whelchel et al. [4], for the first time, used an artificial intelligence method (neural networks), as opposed to maximum likelihood method, to perform MC. They proposed a general demodulator and compared their results to the results from the maximum likelihood method.
In the first step, we determine whether we have a singlecarrier or a multicarrier signal. For the case of singlecarrier modulation, we use IQ diagrams of the received signals as unique features for classification and apply a clustering algorithm to extract those features. Similar methods using the constellation shape as a classification feature have been considered in the previous work [7, 8], in which they utilize the fuzzy cmeans clustering in their algorithms.
Dealing with MC problems as a problem well suited for pattern recognition algorithms goes before the work in [9]. There have been other attempts to extract optimal features from signals. Histograms derived from functions like amplitude, instantaneous phase, frequency, or combinations of these have been used by [10] and [11]. Jondral [12] proposes a modulation classifier utilizing the pattern recognition approach for recognition of both analog and digital modulation types. They use instantaneous amplitude, phase, and frequency histograms as key features for classification. However, in this case, we have utilized a cascade of kcenter and kmeans algorithms to achieve much higher accuracy in determining the type of the modulation and also to reduce the complexity of the process. Later, we show that our new method gives better classification results compared to other methods for QAM and phaseshift keying (PSK) modulations.
For the multicarrier modulation case, a number of steps such as Gaussianity, autocorrelation, and cyclostationarity tests are performed to identify and extract the parameters of the orthogonal frequency division multiplexing (OFDM) signal in order to complete the algorithm. Most of these methods have been previously discussed in the literature [13–15] and are well known. For channel estimation of OFDM systems, other methods have also been proposed, including ML [16] and maximum a posteriori (MAP) techniques [17]. We have also proposed a method based on our clustering algorithm to correct some of the frequency offsets and IQ imbalances in a received OFDM signal. The details of these steps are presented independently in separate articles [18].
Also, we assume that the signal is sufficiently oversampled. Oversampling at rate ${f}_{s}\ge 4B$, where B is the monolateral signal bandwidth (i.e., [ −B,B]), eliminates aliasing in the cyclic frequency domain. In our algorithm, oversampling at this rate is essential in detecting multicarrier signals, for which we have a cyclostationary degree of two. Finally, at this point, we are only considering additive white Gaussian noise (AWGN) channels and will consider fading channels at a later stage of the research.
We also assume an ideal A/D converter (i.e., no additional noise because of the A/D process, including dither) and a sampling rate of once per symbol at the output of the matched filter. Thus, whenever we refer to the number of samples being used in our simulations, especially our clustering simulations, we refer to samples taken from the output of the matched filter. This assumption means that we have also achieved timing recovery, which enables us to extract the IQ diagram of the signal.
In Section 2, we first discuss the architecture of the algorithm. We overview the building blocks of the algorithm. This includes an overview of Gaussianity tests, the clustering algorithm for IQ diagrams, and OFDM parameter extraction. Section 3 presents some of our results. Finally, in Section 4, we provide conclusions and future work including considerations for implementation in hardware.
2 Novel modulation classification algorithm
The first step in classifying the incoming signal is to perform a Gaussianity test to determine the presence or absence of a Gaussian signal. In OFDM modulation, all orthogonal subcarriers are transmitted simultaneously. In other words, the entire allocated channel is occupied with the aggregated sum of the narrow orthogonal subbands. Thus, the OFDMmodulated signal can be considered to be a composite of a great number of independent identically distributed (IID) random variables. Therefore, using the central limit theorem (CLT)^{a}, we can claim that the amplitude distribution of the sampled signal can be approximated with a normal (Gaussian) distribution. However, this cannot be said for the case of a singlecarrier modulated signal [15]. Hence, multi/singlecarrier classification can be made with a Gaussianity test.
A few of the Gaussianity tests that have been discussed in the literature have been proposed for this task [8, 15, 19–21]. Although there is a vast number of tests available, some of them, such as χ^{2} test or Epps test, are not well suited for digital modulation due to their high noise sensitivity. The tests that have been recommended are modified versions of the aforementioned tests, e.g., the GiannakisTsatsanis and the JarqueBera tests are modified versions of χ^{2} test.
Our study of previous work in the field of MC, especially in the classification of multicarrier signals, reveals that a thorough study of the Gaussianity test as a best fit for this purpose has not been performed. For this purpose, we extensively studied the available Gaussianity tests [22] to find the most appropriate test to classify multicarrier modulations versus singlecarrier modulations, through various simulations, considering all possible elements and employing Monte Carlo method. The approach we take to find the best suitable test is to evaluate each test in simulations under different conditions of noise and different types of modulations. The tests that are considered are JarqueBera, GiannakisTsatsanis, KolmogorovSmirnov, AndersonDarling, D’AgostinoPearson, ShapiroWilk, Cramervon Mises, and Lilliefors. We also include the χ^{2} test to compare our tests against it. The Cramervon Mises and ShapiroWilk tests have shown the fastest processing time overall. They consistently give better results compared to other tests. We have also seen that the processing time for the Cramervon Mises test is almost half as that of the ShapiroWilk test, which makes it the most suitable test for our purpose. The details of these tests and their implementations and results are presented in [18, 22].
2.1 Singlecarrier modulation
A failed Gaussianity test indicates a singlecarrier signal, which will branch the process to that of classifying various types of modulations in a singlecarrier signal. Also, after extracting parameters of the OFDM signal, we will need to identify and demodulate each of its subcarriers.
We develop a procedure for classifying the singlecarrier modulations using its constellation shape and a combination of kmeans and kcenter algorithms.
We provide here a detailed explanation of the clustering technique. This technique efficiently detects the center of clusters in each IQ diagram. In order to explain the kcenter and the kmeans algorithms, we need to first introduce a few definitions.
Definition 1

within distance D_{ k } of each other, or

within distance D_{ k }/2 of some point called the cluster center.
Definition 2.

$\bigcup S=X$

C_{ p }∩C_{ q }=∅ if C_{ p }∈S,C_{ q }∈S,C_{ p }≠C_{ q }.
Definition 3.
In all of these definitions and those that follow, k is the k^{th} cluster in the set of K clusters that belong to partition S. The quantities p and q also refer to different clusters in the same set of K clusters.
2.2 kmeans
This cost is minimized when μ=mean(C), which is the same as Equation (4).
2.3 kcenter
kcenter clustering is similar to kmeans, but uses a different optimization criterion. We use a version of this algorithm, called greedy kcenter, to give the initial points for the kmeans algorithm. kcenter focuses on the worst case scenario, especially when there are outliers.
It minimizes the worst case distance to centroid μ_{ k }. Although called the centroid, unlike for kmeans, μ_{ k } may not be the mean vector. In kcenter clustering, among the clusters, only the worst cluster matters, whose farthest data point yields the maximum distance to the centroid compared to the farthest data points of the other clusters.
We use the greedy kcenter algorithm to get the approximate locations of the cluster centers. Next, we use the results to initialize kmeans and then use it to improve the results to find the exact locations of the centers. This extra step of using the kcenter algorithm reduces the error considerably, especially for high SNR channels. Using the kcenter algorithm to initialize the kmeans algorithm also causes the kmeans algorithm to diverge very rapidly. The performance of this combined algorithm can be compared to the kmeans++ [24] algorithm. Our simulations show that using kcenter to initialize the kmeans algorithm may be slower than kmeans++ by a factor of two but it will be several orders of magnitude more accurate, especially in higher SNR.
In order to measure and quantify this improvement in performance, we need to define an attribute that would help us in comparing different methods. We also use this attribute to classify different singlecarrier modulations.
where μ_{ i } is the center of cluster i and X_{ i } is the corresponding symbol location of i^{th} symbol in a constellation with K symbols. This term measures the Euclidean distance of the calculated cluster center from the actual constellation point and normalizes it with respect to power of the signal.
Now that we have these cluster centers, the next step is making the decision on the type of the modulation.
2.4 Multicarrier feature extraction
Passing the Gaussianity test indicates that we have Gaussianity in our received signal. However, we have to take note that this can be due to the presence of plain AWGN in the channel. It has been shown that an OFDM signal is cyclostationary with period T_{ s }, where T_{ s } is the symbol duration in an OFDM signal [25, 26]. So, in the next step of our algorithm, a cyclostationarity test is used to confirm if we indeed have an OFDM signal. If the test fails and no cyclostationarity is detected, then we can conclude that the incoming signal is not OFDM but rather white Gaussian noise. A byproduct of this process is the estimation of the OFDM symbol rate. After this step, the autocorrelation test determines the duration of the cyclic prefix, which as a result also gives us the data duration in an OFDM symbol.
Finally, we use a twostage process of a bank of fast Fourier transforms (FFTs) combined with our Gaussianity test to determine the number of subcarriers. In [15], we see a detailed approach toward the estimation of the number of subcarriers. To estimate the number of carriers, N, we use a bank of FFTs. We assume that the number of subcarriers is a power of two, since OFDM signals are made using inverse FFTs.
This algorithm utilizes the fact that, if the output in one of the FFT branches is perfectly demodulated, then it will have only useful data and will no longer possess a Gaussian distribution. On the other hand, all the other branches will still show Gaussian property. By increasing the number of OFDM symbols processed in this FFT bank, a more accurate result can be obtained, but accuracy would be a tradeoff with an increase in computation time to make the decision.
The physical meaning of Equation (10) is that, if k is a multiple of M, then Y_{ k }, the k^{th} output of$\phantom{\rule{0.25em}{0ex}}\xd1$point FFT, is the summation of M original data symbols. Those data symbols come from the $\frac{k}{M}$th subcarrier of M transmitted OFDM symbols. Since M may not be a large number, Y_{ k } shows little Gaussianity.
Therefore, the procedure will be as follows: with the incoming signal, we initiate a$\phantom{\rule{0.25em}{0ex}}\xd1$point FFT operation. The initial value of$\phantom{\rule{0.25em}{0ex}}\xd1$ is set larger than the possible maximal value of the transmitter IFFT size N. Then, we test the output of the FFT for Gaussianity. If strong Gaussianity is shown, which means $\xd1\gg N$, we divide$\phantom{\rule{0.25em}{0ex}}\xd1$ by 2 and apply the new$\phantom{\rule{0.25em}{0ex}}\xd1$point FFT. This cycle is repeated until the Gaussianity test fails, which implies the fact that $\xd1=N$. Therefore, the number of subcarriers is obtained. If no result is achieved by the end, this repetition continues until $\xd1=2$ indicates an error in this step of determining the number of subcarriers, or in previous step of determining the validity of the Gaussian tests.
A cyclic prefix is necessary to determine the start of each symbol duration, and the number of subcarriers determines the length of the FFT that we need in the signal demodulator. This then allows us to use our singlecarrier MC on each subcarrier and then demodulate it. The details of these steps have been presented in a separate article [18].
3 Results
The results presented here are obtained from simulations using MATLAB. The simulations were produced using MATLAB R2009a x64 on Windows 7. To test the algorithm against different types of modulations, we have considered the highly used modulations of MPSK and MQAM.
In high SNR environments (SNR ≥ 30 dB), the performance of the algorithm is almost perfect. As we move toward lower SNR (SNR ≤ 5 dB), we see that the cluster centers deviate from the actual positions of constellation symbols. For the case of PSK modulations, the degradation starts at higher SNRs compared to QAM modulations. This is due to the Euclidean distance between the symbols in PSK, which is relatively closer compared to QAM modulation with the same number of constellation points.
For the case of 256QAM modulation in Figure 5b, we see a few missing symbols in the constellation, which decreases when we double the number of samples from 512 to 1,024. This is due to the fact that, for the case of 256QAM modulation and 512 samples, there are only two samples per symbol on average in the IQ diagram and, in some cases, there are no samples present for some of the clusters in the IQ diagram. However, even for the case of 512 samples and 256QAM, the shape of the constellation is still distinguishable. In our results, we show that the algorithm is fully able to classify the type of modulation even when a few symbols are missing as seen for the case of 256QAM. It should be noted that, despite using only 512 samples of the signal, the algorithm yields accurate results even for higher order modulations such as 256QAM. This also shows that, for lower order modulations, we would need much fewer samples.
We assume that N≥K, where N is the number of samples and K is the number of constellation points in a modulation (K is also defined as the number of clusters previously in this article, which converge for correct classification).
Classifier results for 16QAM modulated signal
SNR  4QAM  8QAM  16QAM  64QAM  8PSK  16PSK 

10  0  0  100%  0  0  0 
8  0  0  100%  0  0  0 
6  0  0  99.4%  0  0  0 
4  0  0  96%  0  0  0 
2  0  0  88%  0  0  0 
Classifier results for 64QAM modulated signal
SNR  4QAM  8QAM  16QAM  64QAM  8PSK  16PSK 

10  0  0  0  100%  0  0 
8  0  0  0  100%  0  0 
6  0  0  0  100%  3.3%  0 
4  0  0  0  100%  4.1%  0 
2  0  0  0  60.5%  2.2%  0 
Classifier results for 8PSK modulated signal
SNR  4QAM  8QAM  16QAM  64QAM  8PSK  16PSK 

10  0  0  0  0  100%  0 
8  0  0  0  0  100%  0 
6  0  0  0  0  99.9%  0 
4  0  0  0  0  87%  0 
2  0  0  0  0  6.7%  0 
Classifier results for 16PSK modulated signal
SNR  4QAM  8QAM  16QAM  64QAM  8PSK  16PSK 

10  0  0  0  0  0  100% 
8  0  0  0  0  0  100% 
6  0  0  0  0  0  100% 
4  0  0  0  0  0  89.5% 
2  0  0  0  0  0  43.4% 

P_{ cc } as the percentage of correct classification,

1000 Monte Carlo trials,

N=100 the number of symbols, and

rectaugular pulse shape.
Comparing with previous methods
Classifier  SNR (dB)  P _{ cc } 

MC method in this work  3  100% 
MC method in this work  0  94.2% 
MC method in this work  −3  47.1% 
ALRT, L=1, η_{A}=1  −3  97.5% 
ALRT, L=2, η_{A}=1  −6  97.5% 
QuasiALRT, M=2  −2  96% 
HLRT, threshold = 1  −2  96.8% 
Cumulantbased, N_{mod}=2, μ_{H}=1  4  96% 
Cumulantbased, N_{mod}=2, μ_{H}=1  6  96% 
QuasiALRT, M=2, timing offset = 0.15  11  96% 
Comparing with previous methods
Classifier  SNR (dB)  P _{ cc } 

MC method in this work  3  100% 
MC method in this work  0  97.7% 
MC method in this work  −3  34.3% 
ALRT, L=1, η_{A}=1  7  99% 
HLRT with μ_{H} not specified  9  99% 
Cumulantbased, N_{mod}=2, μ_{H}=−0.68  9  99% 
QuasiHLRT, threshold = 1  19  99% 
QuasiALRT  30  88% 
Clustering comparison 1
SNR  0  5  10  15  20  30 

k center  0.1460  0.1413  0.1302  0.1018  0.1018  0.1019 
k means  0.0528  0.0550  0.0468  0.0605  0.0572  0.0535 
k means++  0.0470  0.0446  0.0417  0.0502  0.0534  0.0490 
We now discuss the complexity of our algorithm in a more analytical manner with hardware implantation considerations in mind.
From the above characteristics of a modulation classifier, it can be seen that there are two aspects to examine in order to determine the complexity of an algorithm. The first is how well it works in realtime and, second, how computationally complex it is. Although these questions are interrelated, the methods to deal with them and their results can be completely independent of one another.
To start the evaluation and to determine the algorithm complexity, we have to divide the algorithm into subalgorithms, for each of which we can determine the complexity. If we take another look at Figure 2, we observe that the algorithm consists of three parts in the worst case scenario, which is the case of a received multicarrier signal. These three parts consist of the Gaussianity test, the OFDM feature extraction steps, and the clustering algorithm using IQ diagrams.
To address how well the algorithm deals with realtime scenarios, we have performed a number of simulations to calculate the processing time. A number of these results are presented in previous sections. However, to gain an idea of the degree of complexity of the algorithm, we use big notation, which gives the asymptotic running time for an indefinitely large input.
First, we consider the Gaussianity test. We have already concluded that the most appropriate tests for our purpose is the ShapiroWilk test and the Cramervon Mises test. In the ShapiroWilk test, the MATLAB function polycal is used. This function is based on Horner’s method of polynomial evaluation [27]. Based on this and the MATLAB code for the ShapiroWilk test, we can conclude that the test is $\mathcal{O}\left(N\right)$.
For the case of the Cramervon Mises test, the MATLAB function interp1 is used, which is the function for linear interpolation. This function is also $\mathcal{O}\left(N\right)$. Thus, we can conclude that the first stage of the algorithm is $\mathcal{O}\left(N\right)$.
The second stage, OFDM feature extraction, consists of several steps. In this stage, the most computationally complex process is the autocorrelation process. By itself, the autocorrelation function is $\mathcal{O}\left({N}^{2}\right)$. However, there are several efficient algorithms that can bring down the order of calculation to $\mathcal{O}(NlogN)$.
Finally, the last step is the clustering algorithms of kcenter and kmeans. The greedy kcenter algorithm that is used here is $\mathcal{O}(logN)$[28, 29]. For the case of kmeans, there are several different approximations. The most common algorithm that is used for kmeans and is also implemented in MATLAB is called Lloyd’s algorithm [30]. The algorithm is usually very fast, but there is no guarantee that it will converge to a global minimum, and the result may depend on the method of initialization. It can become very slow for some initial values and theoretically can take exponential time ${2}^{\Omega \left(\sqrt{N}\right)}$ to converge [31], where Ω(·) shows the lower bound of required calculations. This can also be written as exp(n/ log2e), where e is Euler’s constant. However, using the kcenter algorithm for initialization guarantees that the algorithm converges quickly. Thus, we conclude for this stage that the approximation is $\mathcal{O}(logN)$.
After considering all of these stages, the stage with the highest complexity will determine the upper limit for the order of complexity of this algorithm. As can be seen from previous arguments, the second stage with a complexity order of $\mathcal{O}(NlogN)$ has the higher bound. Thus, it can be concluded that this is the order of complexity of this MC algorithm.
It must also be noted, however, that in modern computers the complexity expressed by big notation can be irrelevant. It is more important how long those operations take and what combinations of instructions can be processed simultaneously by the CPU. Also, tremendously important in determining computing time is the ability of the algorithm to fit into cache. An algorithm that takes $\mathcal{O}\left(N\right)$ running time in theory can end up taking much longer than a different algorithm that takes $\mathcal{O}\left({N}^{2}\right)$ to compute the same result, if the $\mathcal{O}\left({N}^{2}\right)$ operates in cache and the $\mathcal{O}\left(N\right)$ trashes the cache badly.
It should also be mentioned that, when writing the code, some careful considerations can increase the speed of the algorithm, e.g., in the clustering algorithm in MATLAB, using bsxfun (which applies the elementbyelement binary operation to two arrays with singleton expansion enabled) instead of repmat (which replicates and tiles arrays) improves the speed by 30%. Also, when using GNU Radio along with universal software radio peripheral (USRP) in hardware implementation of the algorithm, dividing the array of samples into smaller blocks significantly reduces the latency. A reduction of size from 512byte packets to 64byte packets reduces the total round trip latency by an order of 10.
4 Conclusion
The goal of this research was to design and implement a comprehensive modulation classification system to be used in a cognitive radio. A tree structure is proposed. We have extensively studied Gaussianity tests to determine the most appropriate test available for classifying singlecarrier signals from multicarrier ones. The results show that a tradeoff must be made between the tests’ sensitivity to noise and how fast they perform. Based on the simulations, Cramervon Mises and ShapiroWilk tests both have very good processing time and achieve good results when dealing with noisy signals.
We also applied the kcenter and the kmeans clustering algorithms to develop a method of classifying different singlecarrier modulation schemes. This method proved to be very efficient in classifying the modulation schemes that have different IQ diagrams. By applying these methods and by setting appropriate threshold levels, we achieved perfect classification for SNR>5 dB when choosing between six different modulation schemes. It was shown that the performance of this algorithm is superior to the best published classifiers in being able to classify both QAM and PSK modulations with high accuracy in very low SNR.
There are further steps to improve the performance of the algorithm. For example, the performance of the algorithm in fading channels is an interesting topic, and there has not been a lot of work in the literature. Our preliminary results show that in the case of a singlecarrier modulation, the MC algorithm will not be successful unless we have further information about the channel. One possible solution to the problem in singlecarrier modulation is to add an additional step to estimate the channel before applying the algorithm. A possible solution for this has been given using sixthorder cumulants [32]. However, for the OFDM signals even in fading environments, the algorithm is successful. In this case, we already take several steps to extract the timing information of the OFDM signals and when we arrive at the final stage with the modulation of each of the subcarriers being unknown, we have the timing information necessary to build the IQ diagram. Also, currently we require preprocessing in order to build the IQ diagrams. However, extracting the timing data automatically can be another area of research for further development of this algorithm.
Finally, the algorithm is easy to implement and practical and can perform in real time using various optimizations proposed in this paper, when implementing it on available SDR boards to perform realtime MC on incoming signals.
Endnote
^{a} The CLT states that the sum of a large number of IID random variables will be approximately normally distributed (i.e., follow a Gaussian distribution, or bellshaped curve) if the random variables have a finite variance [33].
Declarations
Authors’ Affiliations
References
 Haykin S: Cognitive radio: brainempowered wireless communications. IEEE J. Selected Areas Commun 2005, 23(2):201220.View ArticleGoogle Scholar
 Dobre O, Abdi A, BarNess Y, Su W: Survey of automatic modulation classification techniques: classical approaches and new trends. IET Commun 2007, 1(2):137156. 10.1049/ietcom:20050176View ArticleGoogle Scholar
 Aisbett J: Automatic modulation recognition using time domain parameters. Signal Process 1987, 13(3):323328. 10.1016/01651684(87)901307MathSciNetView ArticleGoogle Scholar
 Whelchel J, McNeill D, Hughes R, Loos M: Signal understanding: an artificial intelligence approach to modulation classification. In Proceedings of IEEE International Workshop on Languages and Algorithms, Tools for Artificial Intelligence Architectures,1989. Fairfax, VA; 23–25 Oct 1989:231236.Google Scholar
 Wei W, Mendel J: A new maximumlikelihood method for modulation classification. In Conference Record of the TwentyNinth Asilomar Conference on Signals, Systems and Computers, 1995. Pacific Grove, CA; 30 Oct:11321136.Google Scholar
 Lin Y, Kuo CJ: Classification of quadrature amplitude modulated (QAM) signals via sequential probability ratio test (SPRT). Signal Process 1997, 60(3):263280. 10.1016/S01651684(97)000777View ArticleMATHGoogle Scholar
 Ahmadi N: Using fuzzy clustering and TTSAS algorithm for modulation classification based on constellation diagram. Eng. Appl. Artif. Intell 2010, 23(3):357370. Accessed 21 March 2011 [http://dx.doi.org/10.1016/j.engappai.2009.05.006] [] Accessed 21 March 2011 10.1016/j.engappai.2009.05.006View ArticleGoogle Scholar
 Mobasseri BG: Digital modulation classification using constellation shape. Signal Process 2000, 80(2):251277. 10.1016/S01651684(99)001279View ArticleMATHGoogle Scholar
 Mobasseri B: Constellation shape as a robust signature for digital modulation recognition. In Proceedings of IEEE Military Communications Conference, MILCOM 1999. Atlantic City, NJ; 31 Oct–03 Nov 1999:442446.View ArticleGoogle Scholar
 Dominguez LV, Borrallo JMP, García JP, Mezcua BR: A general approach to the automatic classification of radiocommunication signals. Signal Process 1991, 22(3):239250. 10.1016/01651684(91)900128View ArticleGoogle Scholar
 Huan C, Polydoros A: Likelihood methods for MPSK modulation classification. IEEE Trans. Commun 1995, 43(234):14931504.View ArticleMATHGoogle Scholar
 Jondral F: Foundations of Automatic Modulation Classification. ITGFachbericht 1989, 107: 201206.Google Scholar
 Lundén J, Koivunen V, Huttunen A, Poor HV: Collaborative cyclostationary spectrum sensing for cognitive radio systems. Trans. Sig. Proc 2009, 57(11):41824195.View ArticleMathSciNetGoogle Scholar
 Shi M, BarNess Y, Su W: Blind OFDM systems parameters estimation for softwaredefined radio. 2nd IEEE International Symposium on New Frontiers in Dynamic Spectrum Access Networks, 2007. DySPAN 2007, Dublin; 17–20 April 2007:119122.View ArticleGoogle Scholar
 Li H, BarNess Y, Abdi A, Somekh OS, Su W: OFDM modulation classification and parameters extraction. 1st International Conference on Cognitive Radio Oriented Wireless Networks and Communications, 2006. Mykonos Island; 8–10 June 2006:16.Google Scholar
 Cui T, Tellambura C: OFDM channel estimation and data detection with superimposed pilots. Eur. Trans. Telecommun 2011, 22: 125136. 10.1002/ett.1461View ArticleGoogle Scholar
 Çürük SM, Tanik Y: A simplified MAP channel estimator for OFDM systems under Rayleigh fading. Eur. Trans. Telecommun 2010, 21(4):396405. Accessed 21 March 2011 [http://dx.doi.org/10.1002/ett.1415] [] Accessed 21 March 2011Google Scholar
 Azarmanesh O, Bilén SG: New results on a twostage novel modulation classification technique for cognitive radio applications. In Proceedings of IEEE Military Communications Conference, MILCOM 2011. Baltimore, MD; 7–10 Nov 2011.Google Scholar
 Grimaldi D, Rapuano S, De Vito L: An automatic digital modulation classifier for measurement on telecommunication networks. IEEE Trans. Instrum. Meas 2007, 56(5):17111720.View ArticleGoogle Scholar
 Abdi A, Dobre O, Choudhry R, BarNess Y, Su W: Modulation classification in fading channels using antenna arrays. In Proceedings of IEEE Military Communications Conference, MILCOM 2004. Monterey; 31 Oct–03 Nov 2004:211217.View ArticleGoogle Scholar
 Proakis JG: Digital Communications. New York, NY: McGrawHill Series in Electrical and Computer Engineering, McGraw–Hill Education; 2001.MATHGoogle Scholar
 O Azarmanesh: A novel approach to modulation classification in cognitive radios. Phd dissertation ,. The Pennsylvania State University 2011.Google Scholar
 Jain AK, Dubes RC: Algorithms for Clustering Data. Upper Saddle River, NJ: Prentice Hall, Inc.; 1988.MATHGoogle Scholar
 Arthur D, Vassilvitskii S: kmeans++: The advantages of careful seeding. Technical Report 2006–13, Stanford InfoLab. 2006.http://ilpubs.stanford.edu:8090/778/ Accessed 21 March 2011Google Scholar
 Bolcskei H: Blind estimation of symbol timing and carrier frequency offset in wireless OFDM systems. IEEE Trans. Commun 2001, 49(6):988999. 10.1109/26.930629View ArticleMATHGoogle Scholar
 Oner M, Jondral F: Cyclostationarity based air interface recognition for software radio systems. In IEEE Radio and Wireless Conference, 2004. Atlanta, GA; 1922 Sept 2004:263266.Google Scholar
 Horner WG: A new method of solving numerical equations of all orders, by continuous approximation. Philos. Trans. R. Soc. London 1819, 109: 308335. Accessed 21 March 2011 [http://www.jstor.org/stable/107508] [] Accessed 21 March 2011View ArticleGoogle Scholar
 Archer A:Two$\mathcal{O}\left(\stackrel{\ast}{log}k\right)$approximation algorithms for the asymmetric kCenter problem. In Proceedings of the 8th International IPCO Conference on Integer Programming and Combinatorial Optimization. London, UK: Springer–Verlag; 2001:114. Accessed 21 March 2011 [http://dx.doi.org/10.1007/3540455353_1] [] Accessed 21 March 2011View ArticleGoogle Scholar
 Li Gørtz I, Wirth A: Asymmetry in kcenter variants. Theor. Comput. Sci 2006, 361: 188199. Accessed 21 March 2011 [http://dx.doi.org/10.1016/j.tcs.2006.05.009] [] Accessed 21 March 2011 10.1016/j.tcs.2006.05.009View ArticleMathSciNetMATHGoogle Scholar
 Lloyd SP: Least squares quantization in pcm. IEEE Trans. Inform. Theory 1982, 28: 129137. 10.1109/TIT.1982.1056489MathSciNetView ArticleMATHGoogle Scholar
 Arthur D, Vassilvitskii S: How slow is the kmeans method? In Proceedings of the TwentySecond Annual Symposium on Computational Geometry, SCG’06. New York, NY, USA: ACM; 2006:144153. Accessed 21 March 2011 [http://doi.acm.org/10.1145/1137856.1137880] [] Accessed 21 March 2011View ArticleGoogle Scholar
 Orlic V, Dukic M: Multipath channel estimation algorithm for automatic modulation classification using sixthorder cumulants. Electron. Lett 2010, 46(19):13481349. 10.1049/el.2010.1893View ArticleGoogle Scholar
 Papoulis A, Pillai SU: Probability, Random Variables and Stochastic Processes. New York, NY: McGraw–Hill; 2002.Google Scholar
Copyright
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.