Commit 3705648c authored by Alexander Alekhin's avatar Alexander Alekhin

Merge pull request #13184 from paroj:imshow_cvtscale

parents 940dc1f2 f54b2309
......@@ -2557,7 +2557,14 @@ void DefaultViewPort::updateImage(const CvArr* arr)
nbChannelOriginImage = cvGetElemType(mat);
CV_Assert(origin == 0);
cv::Mat src = cv::cvarrToMat(mat), dst = cv::cvarrToMat(image2Draw_mat);
cv::cvtColor(src, dst, cv::COLOR_BGR2RGB, dst.channels());
cv::Mat tmp;
int src_depth = src.depth();
double scale = src_depth <= CV_8S ? 1 : src_depth <= CV_32S ? 1./256 : 255;
double shift = src_depth == CV_8S || src_depth == CV_16S ? 128 : 0;
cv::convertScaleAbs(src, tmp, scale, shift);
cv::cvtColor(tmp, dst, cv::COLOR_BGR2RGB, dst.channels());
CV_Assert(dst.data == image2Draw_mat->data.ptr);
viewport()->update();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment