How to fix image perspective distortion and rotation with JavaScript?

前端 未结 3 1217
臣服心动
臣服心动 2021-02-02 03:51

I have some images that takes using mobile phone. Is there any JavaScript library which can straighten the photo of a paper and flatten it? For example I want to create a rectan

3条回答
  •  暗喜
    暗喜 (楼主)
    2021-02-02 04:39

    There is no need of any extra npm package, this can be achieved by creation a irregular crop box, first load the image into a canvas, one should adjust 4 cropping points over image, put the portion into a regular rectangular canvas.

    Follow this link for detailed code and steps Image Perspective correction using javascript and opencv

    Here is the demo

    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);
    

提交回复
热议问题