comparison dsp/keydetection/GetKeyMode.cpp @ 11:8837aaa2a0e6

...
author cannam
date Mon, 02 Apr 2007 13:20:30 +0000
parents 12cffcc40bbc
children 10c3f9df4a07
comparison
equal deleted inserted replaced
10:12cffcc40bbc 11:8837aaa2a0e6
217 for( k = 0; k < m_BPO; k++ ) 217 for( k = 0; k < m_BPO; k++ )
218 { 218 {
219 m_Keys[k] = m_MajCorr[k]; 219 m_Keys[k] = m_MajCorr[k];
220 m_Keys[k+m_BPO] = m_MinCorr[k]; 220 m_Keys[k+m_BPO] = m_MinCorr[k];
221 } 221 }
222 222 /*
223 std::cout << "raw keys: "; 223 std::cout << "raw keys: ";
224 for (int ii = 0; ii < 2*m_BPO; ++ii) { 224 for (int ii = 0; ii < 2*m_BPO; ++ii) {
225 std::cout << m_Keys[ii] << " "; 225 std::cout << m_Keys[ii] << " ";
226 } 226 }
227 std::cout << std::endl; 227 std::cout << std::endl;
228 228 */
229 double dummy; 229 double dummy;
230 key = /*1 +*/ (int)ceil( (double)MathUtilities::getMax( m_Keys, 2* m_BPO, &dummy )/3 ); 230 key = /*1 +*/ (int)ceil( (double)MathUtilities::getMax( m_Keys, 2* m_BPO, &dummy )/3 );
231 231
232 std::cout << "key pre-sorting: " << key << std::endl; 232 // std::cout << "key pre-sorting: " << key << std::endl;
233 233
234 234
235 //Median filtering 235 //Median filtering
236 236
237 // track Median buffer initial filling 237 // track Median buffer initial filling
257 } 257 }
258 258
259 259
260 //quicksort 260 //quicksort
261 qsort(m_SortedBuffer, m_MedianBufferFilling, sizeof(unsigned int), MathUtilities::compareInt); 261 qsort(m_SortedBuffer, m_MedianBufferFilling, sizeof(unsigned int), MathUtilities::compareInt);
262 262 /*
263 std::cout << "sorted: "; 263 std::cout << "sorted: ";
264 for (int ii = 0; ii < m_MedianBufferFilling; ++ii) { 264 for (int ii = 0; ii < m_MedianBufferFilling; ++ii) {
265 std::cout << m_SortedBuffer[ii] << " "; 265 std::cout << m_SortedBuffer[ii] << " ";
266 } 266 }
267 std::cout << std::endl; 267 std::cout << std::endl;
268 268 */
269 int sortlength = m_MedianBufferFilling; 269 int sortlength = m_MedianBufferFilling;
270 int midpoint = (int)ceil((double)sortlength/2); 270 int midpoint = (int)ceil((double)sortlength/2);
271 271
272 if( midpoint <= 0 ) 272 if( midpoint <= 0 )
273 midpoint = 1; 273 midpoint = 1;