Compare commits
1 Commits
de9483f562
...
main
Author | SHA1 | Date | |
---|---|---|---|
0547a6769c |
@ -7,7 +7,7 @@ add_executable(${PROJECT_NAME}
|
||||
main.cpp
|
||||
)
|
||||
|
||||
target_include_directories(${PROJECT_NAME} PRIVATE ${OpenCV_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR}/third_party/eigen)
|
||||
target_include_directories(${PROJECT_NAME} SYSTEM PRIVATE ${OpenCV_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR}/third_party/eigen)
|
||||
target_link_libraries(${PROJECT_NAME} ${OpenCV_LIBRARIES})
|
||||
target_compile_definitions(${PROJECT_NAME} PRIVATE IMG_DIR="${CMAKE_CURRENT_SOURCE_DIR}/img")
|
||||
|
||||
|
13
main.cpp
13
main.cpp
@ -32,10 +32,11 @@ int main() {
|
||||
cv::Size patternSize(width, height);
|
||||
|
||||
std::vector<cv::Point3f> obj;
|
||||
obj.reserve(width * height);
|
||||
obj.reserve(static_cast<std::size_t>(width * height));
|
||||
for (int y = 0; y < height; y++) {
|
||||
for (int x = 0; x < width; x++) {
|
||||
obj.emplace_back(x * gridSize, y * gridSize, 0.f);
|
||||
obj.emplace_back(static_cast<float>(x) * gridSize, static_cast<float>(y) * gridSize,
|
||||
0.f);
|
||||
}
|
||||
}
|
||||
|
||||
@ -80,10 +81,10 @@ int main() {
|
||||
cv::undistortImagePoints(corners, pts, cameraMatrix, distCoeffs);
|
||||
|
||||
std::vector<cv::Point2f> obj2;
|
||||
obj2.reserve(width * height);
|
||||
obj2.reserve(static_cast<std::size_t>(width * height));
|
||||
for (int y = 0; y < height; y++) {
|
||||
for (int x = 0; x < width; x++) {
|
||||
obj2.emplace_back(x * gridSize, y * gridSize);
|
||||
obj2.emplace_back(static_cast<float>(x) * gridSize, static_cast<float>(y) * gridSize);
|
||||
}
|
||||
}
|
||||
auto hom = cv::findHomography(pts, obj2, cv::RANSAC);
|
||||
@ -151,7 +152,7 @@ int main() {
|
||||
}
|
||||
|
||||
std::vector<cv::Point2f> projected;
|
||||
for (int i = 0; i < 4; i++) {
|
||||
for (std::size_t i = 0; i < 4; i++) {
|
||||
auto &pt = rotated2[ i ];
|
||||
cv::Mat point(3, 1, CV_64FC1);
|
||||
point.at<double>(0, 0) = pt.x;
|
||||
@ -165,7 +166,7 @@ int main() {
|
||||
|
||||
std::vector<cv::Vec2f> org;
|
||||
std::vector<cv::Vec2f> proj;
|
||||
for (int i = 0; i < 4; i++) {
|
||||
for (std::size_t i = 0; i < 4; i++) {
|
||||
auto &o = origins[ i ];
|
||||
auto &p = projected[ i ];
|
||||
|
||||
|
Reference in New Issue
Block a user