में मैट के अधिकतम पिक्सेल मान की गणना कैसे करें यह स्पष्ट होना चाहिए, मैंने सोचा। लेकिन मुझे ओपनसीवी की एक मैट में सभी पिक्सल के बीच अधिकतम खोजने का आसान तरीका नहीं मिल रहा है। बेशक, मैं प्रत्येक पिक्सेल प्रकार के लिए निम्नलिखित कर सकता हूं। लेकिन सामान्य अधिकतम समारोह अभी भी उपयोगी होगा।ओपनसीवी
double cvMax(cv::Mat& mat)
{
float max=0;
float* pData=(float*)mat.data;
for(int i=0;i<mat.rows;i++)
{
for(int j=0;j<mat.cols;j++)
{
float value = pData[j+i*mat.cols];
if(value>max)
{
max=value;
}
}
}
return max;
}
शायद उल्लेखनीय है कि max_element एक पुनरावर्तक देता है। – twerdster
एक नोट: मुझे उम्मीद है कि मैट इटरेटर बहुत धीमी हो, क्योंकि प्रत्येक वृद्धि पर यह जांचना होगा कि क्या आप एक पंक्ति के अंत तक पहुंच गए हैं (मैट्रिक्स असंतुलित हो सकता है, और वहां पैडिंग बाइट भी हो सकते हैं) – Antonio