view include/cvutils.hpp @ 131:3a11dba30655

added colors
author Nicolas Saunier <nicolas.saunier@polymtl.ca>
date Wed, 17 Aug 2011 19:03:11 -0400
parents 536510f60854
children 47329bd16cc0
line wrap: on
line source

#ifndef CVUTILS_HPP
#define CVUTILS_HPP

#include "opencv2/core/core.hpp"
#include "opencv2/features2d/features2d.hpp"

class CvCapture;

/// constant that indicates if the image should be flipped
//static const int flipImage = CV_CVTIMG_FLIP;

void keyPoints2Points(const std::vector<cv::KeyPoint>& kpts, std::vector<cv::Point2f>& pts, const bool& clearPts = true);

/** Allocates a new IplImage. */
IplImage* allocateImage(const int& width, const int& height, const int& depth, const int& channels);

IplImage* allocateImage(const CvSize& size, const int& depth, const int& channels);

/** Goes to the target frame number, by querying frame, 
    supposing the video input is currently at current frame number.
    Returns the frame number that was reached.*/
int goToFrameNum(CvCapture* inputVideo, const int& currentFrameNum, const int& targetFrameNum);

/// Pre-defined colors
class Colors {
public:
  static const int nColors = 8;
  static const cv::Scalar color[];

  static cv::Scalar black(void);
  static cv::Scalar red(void);
  static cv::Scalar green(void);
  static cv::Scalar blue(void);
  static cv::Scalar white(void);
  static cv::Scalar magenta(void);
  static cv::Scalar cyan(void);
  static cv::Scalar yellow(void);

  /** Maps integers to primary colors. */
  static cv::Scalar color3(const int& num);
  static cv::Scalar color8(const int& num);
};

#endif