#include "spvm_native.h"
#include <stdio.h>
#include <opencv2/opencv.hpp>
extern "C" {
static const char* FILE_NAME = "MyOpenCVResize.c";
int32_t SPVM__MyOpenCVResize__resize(SPVM_ENV* env, SPVM_VALUE* stack) {
using namespace cv;
void* sv_in_file = stack[0].oval;
const char* in_file = (const char*)env->get_elems_byte(env, sv_in_file);
void* sv_out_file = stack[1].oval;
const char* out_file = (const char*)env->get_elems_byte(env, sv_out_file);
Mat image;
image = imread( in_file, 1 );
if (!image.data) {
return env->die(env, stack, "The imread function(opencv2/opencv.hpp) failed.", "MyZlib.c", __func__, FILE_NAME, __LINE__);
}
resize(image, image, cv::Size(), 0.5, 0.5);
imwrite(out_file, image);
return 0;
}
}