我有两个不同视角拍摄的四边形坐标.此外,我有一个点的坐标,但只有两个角度中的一个.我需要将此点的坐标转换为矩形的第二张照片的透视图.这样做我使用OpenCV
我已经计算了透视变换矩阵:
cv::getPerspectiveTransform(quad1, quad2);
Run Code Online (Sandbox Code Playgroud)
我现在的问题是我真的不知道如何使用计算出的透视变换矩阵来变换Point.这可能很简单,但我只是不知道该怎么做.
我正在尝试将包含浮点数组的结构从 C++ DLL 编组到 C#。
我从以下代码创建了 C++ DLL:
//MarshalTest.h
namespace mTest{
typedef struct {
float data[3];
int otherStuff;
} dataStruct;
extern "C" __declspec(dllexport) dataStruct getData();
}
//MarshalTest.cpp
#include "MarshallTest.h"
using namespace std;
namespace mTest{
dataStruct getData(){
dataStruct d = {{ 16, 2, 77 }, 5};
return d;
}
}
Run Code Online (Sandbox Code Playgroud)
我使用以下代码使 getData-Function 在 C# 中可用:
public unsafe struct dataStruct{
public fixed byte data[3];
public int otherStuff;
public unsafe float[] Data{
get{
fixed (byte* ptr = data){
IntPtr ptr2 = (IntPtr)ptr;
float[] …Run Code Online (Sandbox Code Playgroud)