From 3359bdc464a6c8f38f36498992bd1dbba3fc0aaa Mon Sep 17 00:00:00 2001 From: Alexander Alekhin Date: Sun, 20 Dec 2020 02:27:46 +0000 Subject: [PATCH] docs(core): fix process_video_frame() code snippet --- modules/core/include/opencv2/core/mat.hpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/modules/core/include/opencv2/core/mat.hpp b/modules/core/include/opencv2/core/mat.hpp index 0922db9084..98f451cf71 100644 --- a/modules/core/include/opencv2/core/mat.hpp +++ b/modules/core/include/opencv2/core/mat.hpp @@ -702,11 +702,16 @@ sub-matrices. -# Process "foreign" data using OpenCV (for example, when you implement a DirectShow\* filter or a processing module for gstreamer, and so on). For example: @code - void process_video_frame(const unsigned char* pixels, - int width, int height, int step) + Mat process_video_frame(const unsigned char* pixels, + int width, int height, int step) { - Mat img(height, width, CV_8UC3, pixels, step); - GaussianBlur(img, img, Size(7,7), 1.5, 1.5); + // wrap input buffer + Mat img(height, width, CV_8UC3, (unsigned char*)pixels, step); + + Mat result; + GaussianBlur(img, result, Size(7, 7), 1.5, 1.5); + + return result; } @endcode -# Quickly initialize small matrices and/or get a super-fast element access.