Example #1
0
Descriptor DominantColor::extract_(MyImage *image,
				   bool makeVisRep,
				   Magick::Image *repr){
  cv::Mat &img = *image->getOpenCVMat();
  Frame* frame = new Frame(img);
  XM::DominantColorDescriptor *dcd = 
    Mpeg7Feature::getDominantColorD( frame , false ); // don't normalize
  size_t nColors = dcd->GetDominantColorsNumber();
  XM::DOMCOL *colors = dcd->GetDominantColors();
  cout << "we've got: " << nColors << " dominant colors" << endl;
  Descriptor desc;
  for(size_t i = 0; i < nColors; ++i){
    cout << "color " << i << "  percentage: " << colors[i].m_Percentage;
    for(size_t j = 0; j < 3; ++j){
      cout << " " <<  j << " " << colors[i].m_ColorValue[j];
      desc.push_back((float) colors[i].m_ColorValue[j]);
    } // for j
    cout << endl;
  } // for i
  desc.resize(24, 0.0);
  return desc;
}