不需要任何额外的 npm 包,这可以通过创建一个不规则的裁剪框来实现,首先将图像加载到画布中,应该在图像上调整 4 个裁剪点,将部分放入规则的矩形画布中。
点击此链接获取详细代码和步骤使用 javascript 和 opencv 进行图像透视校正 http://www.recompile.in/2019/11/image-perspective-correction-using.html
这是演示
let dst = new cv.Mat();
let dsize = new cv.Size(imageHeight, imageWidth);
let srcTri = cv.matFromArray(4, 1, cv.CV_32FC2, pointsArray);
let dstTri = cv.matFromArray(4, 1, cv.CV_32FC2, [0, 0, imageHeight, 0, imageHeight, imageWidth, 0, imageWidth]);
let M = cv.getPerspectiveTransform(srcTri, dstTri);
cv.warpPerspective(src, dst, M, dsize, cv.INTER_LINEAR, cv.BORDER_CONSTANT, new cv.Scalar());
document.getElementById('imageInit').style.display = "none"
cv.imshow('imageResult', dst);