Преобразование RGB изображения на opencv в градации серого — TechCave

Оглавление void cvtColor(InputArray src, OutputArray dst, int code, int dstCn=0 ) Параметры: src - входное изображение: 8-битное без знака, 16-битное без знака (CV_16UC ...) или с плавающей запятой с одинарной точностью.

Преобразование RGB изображения на opencv в градации серого

OpenCV/Обработка и распознавание изображений

Преобразование RGB изображения на opencv в градации серого

Оглавление

void cvtColor(InputArray src, OutputArray dst, int code, int dstCn=0 )

Параметры:

  • src — входное изображение: 8-битное без знака, 16-битное без знака (CV_16UC ...) или с плавающей запятой с одинарной точностью.
  • dst — выходное изображения такого же размера и глубины, что и src.
  • code — код преобразования цветового пространства.
  • dstCn — количество каналов в целевом изображении; Если параметр равен 0, количество каналов устанавливается автоматически из src и code.
Обратите внимание, что формат цвета по умолчанию в OpenCV часто упоминается как RGB, но на самом деле это BGR (байты инвертированы)

Обычные диапазоны для значений каналов R, G и B:

  • От 0 до 255 для изображений CV_8U
  • От 0 до 65535 для изображений CV_16U
  • От 0 до 1 для изображений CV_32F


Пример программы:

#include "opencv2/core/core.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include <iostream>

using namespace cv;
using namespace std;

int main( )
{

    Mat image;
    image = imread("lena.jpg", CV_LOAD_IMAGE_COLOR);

    if(! image.data )
    {
        cout <<  "Could not open or find the image" << std::endl ;
        return -1;
    }

    // Создаем matrix, куда будем помещать обработанное изображение
    Mat gray;

    // Конвертироем RGB изображение в оттенки серого
    cvtColor(image, gray, CV_BGR2GRAY);

    namedWindow( "Display window", CV_WINDOW_AUTOSIZE );
    imshow( "Display window", image );

    namedWindow( "Result window", CV_WINDOW_AUTOSIZE );
    imshow( "Result window", gray );

    waitKey(0);
    return 0;
}

Результат выполнения:

Display window


Result window


Код можно взять на Github.

Оглавление

10:24
2164

Нет комментариев. Ваш будет первым!

Авторизация

Пользователи

Георгiй Москвитинъ
Andpyxa Tutunnik
Andrey_fox
Jane linch
genagy
Pasha Radiuk
KotikBSD
Эрик Имашев
Амир Исмагилов