Bagaimana untuk Cekap Mengakses Nilai Saluran Piksel dalam Imej Mat OpenCV?

Linda Hamilton
Lepaskan: 2024-11-23 08:46:10
asal
279 orang telah melayarinya

How to Efficiently Access Pixel Channel Values in OpenCV Mat Images?

Mengambil Nilai Saluran Pixel daripada Perwakilan Mat OpenCV

Untuk mendapatkan nilai saluran bagi piksel tertentu dalam imej Mat OpenCV, anda boleh menggunakan kaedah berikut:

Kaedah 1: Menggunakan OpenCV's Vec3b

Untuk imej Mat jenis CV_8UC3, mengandungi tiga saluran (biru, hijau dan merah), struktur data Vec3b boleh digunakan:

for(int i = 0; i < foo.rows; i++)
{
    for(int j = 0; j < foo.cols; j++)
    {
        Vec3b bgrPixel = foo.at<Vec3b>(i, j);

        // Access individual channel values:
        uint8_t blue = bgrPixel[0];
        uint8_t green = bgrPixel[1];
        uint8_t red = bgrPixel[2];
    }
}
Salin selepas log masuk

Kaedah 2: Akses Penampan Terus

Untuk prestasi yang lebih baik, akses terus kepada penimbal data imej boleh digunakan:

uint8_t* pixelPtr = (uint8_t*)foo.data;
int cn = foo.channels(); // Number of channels per pixel

for(int i = 0; i < foo.rows; i++)
{
    for(int j = 0; j < foo.cols; j++)
    {
        // Retrieve channel values:
        uint8_t blue = pixelPtr[i*foo.cols*cn + j*cn + 0];
        uint8_t green = pixelPtr[i*foo.cols*cn + j*cn + 1];
        uint8_t red = pixelPtr[i*foo.cols*cn + j*cn + 2];
    }
}
Salin selepas log masuk

Nota: OpenCV menyimpan data piksel secara dalaman dalam format BGR (biru, hijau, merah), dan bukannya RGB.

Atas ialah kandungan terperinci Bagaimana untuk Cekap Mengakses Nilai Saluran Piksel dalam Imej Mat OpenCV?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan