Opencv dostęp do wartości piksela

0

Jak mogę wpisać ręcznie wartość piksela do tablicy. Obraz jest B&W zbinaryzowany. Udało mi się odczytać wartość ale wpisać nie potrafię ;)

if((int)image.at<uchar>(i,j)==0) image.at(i,j)=255;

Wyskakuje błąd:

1>c:\users\mati\documents\visual studio 2008\projects\opencvdemo\opencvdemo\main.cpp(16) : error C2780: 'const _Tp &cv::Mat::at(cv::Point) const' : expects 1 arguments - 2 provided
1>        c:\opencv2.3\build\include\opencv2\core\core.hpp(1816) : see declaration of 'cv::Mat::at'
1>c:\users\mati\documents\visual studio 2008\projects\opencvdemo\opencvdemo\main.cpp(16) : error C2780: '_Tp &cv::Mat::at(cv::Point)' : expects 1 arguments - 2 provided
1>        c:\opencv2.3\build\include\opencv2\core\core.hpp(1815) : see declaration of 'cv::Mat::at'
1>c:\users\mati\documents\visual studio 2008\projects\opencvdemo\opencvdemo\main.cpp(16) : error C2780: 'const _Tp &cv::Mat::at(const cv::Vec<int,n> &) const' : expects 1 arguments - 2 provided
1>        c:\opencv2.3\build\include\opencv2\core\core.hpp(1812) : see declaration of 'cv::Mat::at'
1>c:\users\mati\documents\visual studio 2008\projects\opencvdemo\opencvdemo\main.cpp(16) : error C2780: '_Tp &cv::Mat::at(const cv::Vec<int,n> &)' : expects 1 arguments - 2 provided
1>        c:\opencv2.3\build\include\opencv2\core\core.hpp(1811) : see declaration of 'cv::Mat::at'
1>c:\users\mati\documents\visual studio 2008\projects\opencvdemo\opencvdemo\main.cpp(16) : error C2780: 'const _Tp &cv::Mat::at(const int *) const' : expects 1 arguments - 2 provided
1>        c:\opencv2.3\build\include\opencv2\core\core.hpp(1809) : see declaration of 'cv::Mat::at'
1>c:\users\mati\documents\visual studio 2008\projects\opencvdemo\opencvdemo\main.cpp(16) : error C2780: '_Tp &cv::Mat::at(const int *)' : expects 1 arguments - 2 provided
1>        c:\opencv2.3\build\include\opencv2\core\core.hpp(1808) : see declaration of 'cv::Mat::at'
1>c:\users\mati\documents\visual studio 2008\projects\opencvdemo\opencvdemo\main.cpp(16) : error C2780: 'const _Tp &cv::Mat::at(int,int,int) const' : expects 3 arguments - 2 provided
1>        c:\opencv2.3\build\include\opencv2\core\core.hpp(1806) : see declaration of 'cv::Mat::at'
1>c:\users\mati\documents\visual studio 2008\projects\opencvdemo\opencvdemo\main.cpp(16) : error C2780: '_Tp &cv::Mat::at(int,int,int)' : expects 3 arguments - 2 provided
1>        c:\opencv2.3\build\include\opencv2\core\core.hpp(1805) : see declaration of 'cv::Mat::at'
1>c:\users\mati\documents\visual studio 2008\projects\opencvdemo\opencvdemo\main.cpp(16) : error C2783: 'const _Tp &cv::Mat::at(int,int) const' : could not deduce template argument for '_Tp'
1>        c:\opencv2.3\build\include\opencv2\core\core.hpp(1803) : see declaration of 'cv::Mat::at'
1>c:\users\mati\documents\visual studio 2008\projects\opencvdemo\opencvdemo\main.cpp(16) : error C2783: '_Tp &cv::Mat::at(int,int)' : could not deduce template argument for '_Tp'
1>        c:\opencv2.3\build\include\opencv2\core\core.hpp(1802) : see declaration of 'cv::Mat::at'
1>c:\users\mati\documents\visual studio 2008\projects\opencvdemo\opencvdemo\main.cpp(16) : error C2780: 'const _Tp &cv::Mat::at(int) const' : expects 1 arguments - 2 provided
1>        c:\opencv2.3\build\include\opencv2\core\core.hpp(1800) : see declaration of 'cv::Mat::at'
1>c:\users\mati\documents\visual studio 2008\projects\opencvdemo\opencvdemo\main.cpp(16) : error C2780: '_Tp &cv::Mat::at(int)' : expects 1 arguments - 2 provided
1>        c:\opencv2.3\build\include\opencv2\core\core.hpp(1799) : see declaration of 'cv::Mat::at'
1

Masz przecież napisane w treści błędu - albo podajesz jeden argument typu Point, albo trzy inty (dwie współrzędne i kanał, nawet jak masz obraz w skali szarości, musisz podać 0).

1 użytkowników online, w tym zalogowanych: 0, gości: 1