Rumah >pembangunan bahagian belakang >C++ >Bagaimana Menggunakan cv::warpPerspective dengan Betul untuk Meja Meja Imej?

Bagaimana Menggunakan cv::warpPerspective dengan Betul untuk Meja Meja Imej?

Susan Sarandon
Susan Sarandonasal
2024-12-03 19:18:12280semak imbas

How to Correctly Use cv::warpPerspective for Image Deskewing?

Cara Memohon cv::warpPerspective for Deskewing Set Mata

Apabila melakukan transformasi perspektif pada set mata untuk mencapai kesan deskewing, adalah penting untuk memahami penyusunan mata yang betul dan penggunaan yang sesuai cv::getPerspectiveTransform.

Memastikan Susunan Mata yang Betul

Mata yang mewakili penjuru ROI mesti mengikut susunan tertentu dalam kedua-dua vektor sumber dan destinasi. Contohnya, jika titik sumber disusun sebagai (kiri atas, kiri bawah, kanan bawah, kanan atas), titik destinasi juga mesti mengikut tertib ini.

Menetapkan Saiz Imej

Untuk memastikan imej yang terhasil hanya mengandungi objek yang diminati, tetapkan lebar dan tingginya agar sepadan dengan lebar dan tinggi kotak sempadan segi empat tepat di sekeliling ROI.

Menggunakan Transformasi Affine untuk Kecekapan

Untuk transformasi affine (putar, ubah saiz, deskew), adalah lebih cekap untuk menggunakan fungsi getAffineTransform dan warpAffine. Fungsi ini hanya mengharapkan tiga mata dan matriks 2-demi-3 dan bukannya matriks 3-demi-3.

Menetapkan Saiz Imej Destinasi

Untuk mencipta destinasi imej dengan saiz yang berbeza daripada input, gunakan sintaks berikut dalam cv::warpPerspective:

cv::warpPerspective(src, dst, dst.size(), ... );

atau gunakan sintaks berikut dalam cv::warpAffine:

cv::warpAffine(src, rotated, warpAffineMatrix, size, INTER_LINEAR, BORDER_CONSTANT);

Atas ialah kandungan terperinci Bagaimana Menggunakan cv::warpPerspective dengan Betul untuk Meja Meja Imej?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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