improved cv::preCornerDetect