OpenCV4 utilise la fonction applyColorMap() pour convertir une échelle de gris ou une carte de couleurs en une carte de couleurs personnalisée, ou plus de 20 valeurs de couleurs fournies par opencv

1. Utilisation de la fonction applyColorMap() :

Utilisez la fonction applyColorMap() pour convertir une échelle de gris ou une carte de couleurs en une carte de couleurs personnalisée, ou plus de 20 valeurs de couleur fournies par opencv

(1) Prototype de fonction :
void applyColorMap(InputArray src, OutputArray dst, int colormap)
  • src : image source, image en niveaux de gris ou couleur ( CV_8UC1 ou CV_8UC3 ) ;
  • dst : l'image résultat après mappage des couleurs sur l'image source ;
  • colormap : la valeur de couleur fournie par opencv ;
    // opencv提供的色彩值
    int colorMap[] = {
          
          
    	COLORMAP_AUTUMN,
    	COLORMAP_BONE,
    	COLORMAP_JET,
    	COLORMAP_WINTER,
    	COLORMAP_RAINBOW,
    	COLORMAP_OCEAN,
    	COLORMAP_SUMMER,
    	COLORMAP_SPRING,
    	COLORMAP_COOL,
    	COLORMAP_HSV,
    	COLORMAP_PINK,
    	COLORMAP_HOT,
    	COLORMAP_PARULA,
    	COLORMAP_MAGMA,
    	COLORMAP_INFERNO,
    	COLORMAP_PLASMA,
    	COLORMAP_VIRIDIS,
    	COLORMAP_CIVIDIS,
    	COLORMAP_TWILIGHT,
    	COLORMAP_TWILIGHT_SHIFTED
    };
    
void applyColorMap(InputArray src, OutputArray dst, InputArray userColor)
  • src : image source, image en niveaux de gris ou couleur ( CV_8UC1 ou CV_8UC3 ) ;
  • dst : l'image résultat après mappage des couleurs sur l'image source ;
  • userColor : couleur définie par l'utilisateur (CV_8UC1 ou CV_8UC3 et taille 256) ;
(2) Exemple :
// 将灰度图或彩色图转换成opencv提供的20多种色彩值
void QuickDemo::colorStyle(Mat &image) {
    
    
	// opencv提供的色彩值
	int colorMap[] = {
    
    
		COLORMAP_AUTUMN,
		COLORMAP_BONE,
		COLORMAP_JET,
		COLORMAP_WINTER,
		COLORMAP_RAINBOW,
		COLORMAP_OCEAN,
		COLORMAP_SUMMER,
		COLORMAP_SPRING,
		COLORMAP_COOL,
		COLORMAP_HSV,
		COLORMAP_PINK,
		COLORMAP_HOT,
		COLORMAP_PARULA,
		COLORMAP_MAGMA,
		COLORMAP_INFERNO,
		COLORMAP_PLASMA,
		COLORMAP_VIRIDIS,
		COLORMAP_CIVIDIS,
		COLORMAP_TWILIGHT,
		COLORMAP_TWILIGHT_SHIFTED
	};
	Mat dst;
	int index = 0;
	while (true) {
    
    
		int c = waitKey(200);
		if (c == 27) {
    
    	// 退出
			break;
		}
		// index%19,index取模之后下标值在 0 - 19 之间循环,下标不会超过19
		applyColorMap(image, dst, colorMap[index%19]);
		index++;
		namedWindow("colorStyle", WINDOW_NORMAL);
		imshow("colorStyle", dst);
	}
}

Affichage des résultats :

Veuillez ajouter une description de l'image

Je suppose que tu aimes

Origine blog.csdn.net/qq_33867131/article/details/131537217
conseillé
Classement