###前提・実現したいこと
はじめまして。
OpenCVでWebカメラから読んだ画像にあるコーナーを検出するプログラムを作りたいと考えています。
###発生している問題・エラーメッセージ
for文を抜ける際にメモリアクセス違反だと実行時エラーが出てしまいます。
ビルドは問題なく通ります。
###該当のソースコード
#include "opencv2\opencv.hpp" using namespace cv; using namespace std; int main(int argc, char* argv[]) { VideoCapture cap(0); while (waitKey(5) != 0x1b) { Mat frame; cap >> frame; namedWindow("原画像"); imshow("原画像", frame); Mat gray_image; cvtColor(frame, gray_image, CV_BGR2GRAY); Mat canny_image; Canny(gray_image, canny_image, 60.0, 180.0, 3); namedWindow("Gray-Canny画像"); imshow("Grya-Canny画像", canny_image); Mat harris_image = frame.clone(); vector<Point2f> corners; goodFeaturesToTrack(canny_image, corners, 80, 0.01, 3, Mat(), 3, true); vector<Point2f>::iterator it_corner = corners.begin(); for (; it_corner != corners.end(); ++it_corner) { circle(harris_image, Point(it_corner->x, it_corner->y), 1, Scalar(0, 255, 0), -1); circle(harris_image, Point(it_corner->x, it_corner->y), 8, Scalar(0, 255, 0)); } namedWindow("Harris画像"); imshow("Harris画像", canny_image); } waitKey(0); return 0; }
###補足情報(言語/FW/ツール等のバージョンなど)
Windows10
OpenCV 3.20
Visual Studio 2015
よろしくお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/01/24 07:21
2017/01/24 07:24
2017/01/24 07:53
2017/01/24 12:07 編集