Como dar zoom em uma imagem com opencv?

Pessoal, tenho um exercício de Computação Gráfica onde tenho que dar zoom em uma imagem, mas não estou conseguindo. Como dar zoom com C++?

#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>

using namespace cv;

int main(int argc, char *argv[]){
    Mat img = imread("copo.jpg", CV_LOAD_IMAGE_COLOR);
    Mat img2 = Mat::zeros(img.size(), CV_8UC3);
    img2.at<Vec3b>(0, 0) = img.at<Vec3b>(0, 0);
    img2.at<Vec3b>(0, 1) = img.at<Vec3b>(0, 0);
    img2.at<Vec3b>(0, 2) = img.at<Vec3b>(0, 0);
    img2.at<Vec3b>(0, 3) = img.at<Vec3b>(0, 0);
    if(img2.empty())
       return -1;
    namedWindow("Zoom", CV_WINDOW_AUTOSIZE);
    imshow("Zoom", img2);
    waitKey(0);
    return 0;
}