Data stored in OpenCV
cv::Mats are not always continuous in memory, which can be verified via API
Mat::isContinuous(). Instead, it follows the following rules:
- Matrices created by
clone(), or a constructor will always be continuous.
- The only time a matrix will not be continuous is when it borrows data from an existing matrix (i.e. created out of an ROI of a big mat), with the exception that the data borrowed is continuous in the big matrix, including
- borrow a single row;
- borrow multiple rows but with full original width.