Я новичок в программировании на C++ и OpenCV. Я прошел this учебник по классу Mat в OpenCV. В нем говорится, что «каждый объект Mat имеет свой собственный заголовок» и многократно использует заголовок. Я не был уверен, что означает заголовок в этом контексте?Что подразумевается под заголовком объекта Mat в OpenCV?
Я попытался прибегая к помощи и нашел this страницу, которая говорит: «Мат в основном класс с двумя частями данных: матрица заголовок (содержит такую информацию, как размера матрицы, метод , используемого для хранения, в , адрес которого является матрица хранится, и так далее) ..........»
Теперь я понимаю, что это значит, но размер у меня есть два вопроса, чтобы уточнить:
- Что делает "метод, используемый для s toring "см.? Какой член в классе Mat означает это?
- Что касается адреса, соответствует ли он члену «datastart» в классе Mat?
Спасибо!
может быть, вы можете думать об этом как «пакете», с небольшим описательным разделом в передней части (ширина, высота, типом и т.д.), а затем фактические содержимое/данных/пикселями – berak
Благодаря @berak для ответ. Я только что редактировал мой вопрос, который требует более подробного разъяснения. Пожалуйста, подумайте над ответом. – Ruchir
для больших элементов данных, таких как изображения, пользователь не хочет копировать все данные все время (например, в каждом вызове функции), но с помощью указателей часто не является безопасным. Поэтому opencv использует те заголовки матриц (cv :: Mat obhect) как объекты, которые arent дорого копировать. большой объем данных вместо этого указывается указателем внутри этого заголовка. Поэтому всякий раз, когда вы копируете объект cv :: Mat (например, с помощью copy-constructor), вы не копируете все данные изображения/пикселя, а только заголовок. – Micka