Red de conocimiento informático - Conocimiento del nombre de dominio - ¿Cómo utilizar c para lograr la conversión de color a escala de grises (bimodal, iterativa, etc.) y diseñar una interfaz con parámetros específicos para mostrar las dos imágenes antes y después?

¿Cómo utilizar c para lograr la conversión de color a escala de grises (bimodal, iterativa, etc.) y diseñar una interfaz con parámetros específicos para mostrar las dos imágenes antes y después?

#include?"opencv2/imgcodecs.hpp"

#include?"opencv2/highgui.hpp"

#include?"opencv2/imgproc.hpp"

#include?lt;opencv2/opencv.hppgt;

#include?lt;iostreamgt;

usando?namespace?cv;

usando?std: :cout;

const?int?alpha_slider_max?=?100;

int?alpha_slider;

int?beta_slider;

doble ?alfa;

doble?beta;

Mat?src1;

Mat?src2;

Mat?dst;

//Girar la imagen

¿estática?

double?angle?=?alpha_slider;

double?scale?=?0.6; p>

Mat?rot_mat?=?getRotationMatrix2D(centro, ángulo, escala);

Mat?rot_dst;

warpAffine(src1,rot_dst,rot_mat,src1. size());

if(alpha_slider! =?0){

imshow("Ventana",?rot_dst);

}

else

imshow (? " Window",?src1?);

}

//Convertir a escala de grises

static?void?on_trackbar1(?int,?void* ?)

{ if(beta_slider?==?alpha_slider_max)?{ Mat?gray_image; cvtColor(src1, gray_image, COLOR_BGR2GRAY); p> }

int?main(? void?)

{

src1?=?imread("lena.bmp");

if(?src1.empty()?) ?{?cout?lt;lt;?"Error?loading?src1?\n";?return?-1;?}

Alpha_slider ?= ?0;

beta_slider?=?0;

namedWindow("Window",?WINDOW_AUTOSIZE);?//Crear ventana

char?TrackbarName0 [50 ];

char?TrackbarName1[50];

sprintf(?TrackbarName0,? "¿Rotación? Grado");

sprintf(?TrackbarName1, ? "se vuelve gris"

);

createTrackbar(?TrackbarName1,? "Ventana",?amp; beta_slider,?alpha_slider_max, on_trackbar1?);

createTrackbar(?TrackbarName0,? "Ventana",& alpha_slider,?360,?on_trackbar0?);

on_trackbar0(?alpha_slider,?0?);

on_trackbar1(?beta_slider,?0?);

waitKey (0);

return?;

}

El código anterior solo implementa parte de las funciones de convertir imágenes en color a imágenes en escala de grises y rotar imágenes. . Solo puede importar imágenes modificando la ruta de la imagen en el código fuente.

Este código llama a la biblioteca opencv.

Interfaz de tiempo de ejecución

Mueva la imagen gris hacia el extremo derecho y se convertirá en una imagen en escala de grises.

La rotación es para rotar la imagen, de la siguiente manera. el resultado de girar 104 grados