Pessoal, tenho o seguinte código para dar zoom em uma imagem, mas três linhas estão dando erro.
#include <iostream>
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace std;
using namespace cv;
int main(int argc, char *argv[]){
Mat img = imread("copo.jpg", CV_LOAD_IMAGE_COLOR);
Mat img2 = Mat::zeros(img.size()*2, CV_8UC3);
int wid = img.size().width;
int hei = img.size().height;
int wid2 = img2.size().width;
int hei2 = img2.size().height;
int cont = 0;
for(int i = 0;i < wid;i++){
for(int j = 0;j < hei;j++){
img2.at<Vec3b>(i, j) = img.at<Vec3b>(i, j); //Erro
img2.at<Vec3b>(i+cont, j) = img.at<Vec3b>(i, j); //Erro
img2.at<Vec3b>(i, j+cont) = img.at<Vec3b>(i, j); //Certo
img2.at<Vec3b>(i+cont, j+cont) = img.at<Vec3b>(i, j); //Erro
cont = cont+2;
}
}
if(img.empty())
return -1;
namedWindow("Zoom", CV_WINDOW_AUTOSIZE);
imshow("Zoom", img2);
waitKey(0);
return 0;
}