mirror of
https://github.com/peterbraden/node-opencv.git
synced 2025-12-08 19:45:55 +00:00
change output
MatchTemplateByMatrix now only return the result matrix
This commit is contained in:
parent
d8de6a86b8
commit
344ea4963d
@ -2268,43 +2268,8 @@ NAN_METHOD(Matrix::MatchTemplateByMatrix) {
|
|||||||
int method = (info.Length() < 2) ? (int)cv::TM_CCORR_NORMED : info[1]->Uint32Value();
|
int method = (info.Length() < 2) ? (int)cv::TM_CCORR_NORMED : info[1]->Uint32Value();
|
||||||
cv::matchTemplate(self->mat, templ->mat, m_out->mat, method);
|
cv::matchTemplate(self->mat, templ->mat, m_out->mat, method);
|
||||||
cv::normalize(m_out->mat, m_out->mat, 0, 1, cv::NORM_MINMAX, -1, cv::Mat());
|
cv::normalize(m_out->mat, m_out->mat, 0, 1, cv::NORM_MINMAX, -1, cv::Mat());
|
||||||
double minVal;
|
|
||||||
double maxVal;
|
|
||||||
cv::Point minLoc;
|
|
||||||
cv::Point maxLoc;
|
|
||||||
cv::Point matchLoc;
|
|
||||||
|
|
||||||
minMaxLoc(m_out->mat, &minVal, &maxVal, &minLoc, &maxLoc, cv::Mat());
|
info.GetReturnValue().Set(out);
|
||||||
|
|
||||||
if(method == CV_TM_SQDIFF || method == CV_TM_SQDIFF_NORMED) {
|
|
||||||
matchLoc = minLoc;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
matchLoc = maxLoc;
|
|
||||||
}
|
|
||||||
|
|
||||||
//detected ROI
|
|
||||||
unsigned int roi_x = matchLoc.x;
|
|
||||||
unsigned int roi_y = matchLoc.y;
|
|
||||||
unsigned int roi_width = templ->mat.cols;
|
|
||||||
unsigned int roi_height = templ->mat.rows;
|
|
||||||
|
|
||||||
//draw rectangle
|
|
||||||
if(info.Length() >= 3) {
|
|
||||||
cv::Rect roi(roi_x,roi_y,roi_width,roi_height);
|
|
||||||
cv::rectangle(self->mat, roi, cv::Scalar(0,0,255));
|
|
||||||
}
|
|
||||||
|
|
||||||
m_out->mat.convertTo(m_out->mat, CV_8UC1, 255, 0);
|
|
||||||
|
|
||||||
v8::Local <v8::Array> arr = Nan::New<v8::Array>(5);
|
|
||||||
arr->Set(0, out);
|
|
||||||
arr->Set(1, Nan::New<Number>(roi_x));
|
|
||||||
arr->Set(2, Nan::New<Number>(roi_y));
|
|
||||||
arr->Set(3, Nan::New<Number>(roi_width));
|
|
||||||
arr->Set(4, Nan::New<Number>(roi_height));
|
|
||||||
|
|
||||||
info.GetReturnValue().Set(arr);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// @author ytham
|
// @author ytham
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user