Saya tahu ini mungkin sangat sederhana, tetapi saya baru di OpenCV. Bisakah Anda memberi tahu saya cara mendapatkan ukuran matriks di OpenCV ?. Saya mencari di Google dan saya masih mencari, tetapi jika ada dari Anda yang tahu jawabannya, tolong bantu saya.
Ukuran seperti dalam jumlah baris dan kolom.
Dan apakah ada cara untuk secara langsung mendapatkan nilai maksimum dari matriks 2D?
opencv
opencv-mat
Lakshmi Narayanan
sumber
sumber
Perhatikan bahwa selain baris dan kolom ada sejumlah saluran dan jenis. Ketika sudah jelas apa jenisnya, saluran dapat bertindak sebagai dimensi ekstra seperti pada CV_8UC3 sehingga Anda akan mengatasi matriks sebagai
Jadi ukuran dalam hal elemen tipe dasar adalah M.rows * M.cols * M.cn
Untuk menemukan elemen maks yang dapat digunakan
sumber
Untuk matriks 2D:
mat.rows - Jumlah baris dalam array 2D.
mat.cols - Jumlah kolom dalam array 2D.
Atau: C ++: Ukuran Mat :: size () const
Metode mengembalikan ukuran matriks: Ukuran (cols, baris). Ketika matriks lebih dari 2 dimensi, ukuran yang dikembalikan adalah (-1, -1).
Untuk matriks multidimensi, Anda perlu menggunakan
Catatan, di sini 2 untuk sumbu z, 3 untuk sumbu y, 4 untuk sumbu x. Dengan x, y, z, itu berarti urutan dimensi. x indeks mengubah tercepat.
sumber
Mat::size()
metode anggota, melainkanMat::size
variabel anggota tipeMatSize
. Yang terakhir kelebihan beban operator kurungMatSize::operator()
untuk mengembalikanSize
objekContoh kode C ++ lengkap, mungkin bermanfaat untuk pemula
sumber
Jika Anda menggunakan pembungkus Python, maka (dengan asumsi nama matriks Anda adalah mat ):
mat.shape memberi Anda array tipe- [tinggi, lebar, saluran]
mat.size memberi Anda ukuran array
Kode sampel:
sumber