Java 当参数相同时,为什么扩张函数给出不同的结果

Java 当参数相同时,为什么扩张函数给出不同的结果,java,opencv,image-processing,Java,Opencv,Image Processing,我试图在JavaOpenCV中扩展三个角色的图像。我发现它比以往任何时候都具有相同的字体和大小相同的字符,放大后的结果是不同的。所以我试着用同样的图像,结果仍然不同。这是我的测试代码 for (int j = 0; j < 3; j++) { Mat InputSrc = openFile("src\\myOpencv\\ocr\\crop1.png"); Mat tempImg =new Mat(); Imgproc

我试图在JavaOpenCV中扩展三个角色的图像。我发现它比以往任何时候都具有相同的字体和大小相同的字符,放大后的结果是不同的。所以我试着用同样的图像,结果仍然不同。这是我的测试代码

for (int j = 0; j < 3; j++) {
            Mat InputSrc = openFile("src\\myOpencv\\ocr\\crop1.png");
            Mat tempImg =new Mat();
            Imgproc.cvtColor(InputSrc, tempImg, Imgproc.COLOR_BGR2GRAY);
            Imgproc.threshold(tempImg, tempImg, 0, 255, Imgproc.THRESH_OTSU);
            imageViewer.show(tempImg, "src");
            Mat kernal5 = new Mat(5, 5, CV_8U);
            Point midPoint = new Point(-1, -1);
            Scalar scalarOne = new Scalar(1);
            Mat binImg2 = new Mat();
            Imgproc.dilate(tempImg, binImg2, kernal5, midPoint, 1, 1, scalarOne);
            imageViewer.show(binImg2, "dilate");
        }
for(int j=0;j<3;j++){
Mat InputSrc=openFile(“src\\myOpencv\\ocr\\crop1.png”);
Mat tempImg=新Mat();
Imgproc.cvt颜色(输入src、tempImg、Imgproc.COLOR\u bgr2灰色);
Imgproc.阈值(tempImg,tempImg,0,255,Imgproc.THRESH_OTSU);
imageViewer.show(tempImg,“src”);
Mat kernal5=新的Mat(5,5,CV_8U);
点中点=新点(-1,-1);
标量标量元=新标量(1);
Mat binImg2=新Mat();
扩张(tempImg,binImg2,核5,中点,1,1,scalarOne);
imageViewer.show(binImg2,“放大”);
}

谢谢

如果您能提供您的测试输入图像,并向我们展示您得到的三种不同结果,那将非常有用。请将这4个图像添加到您的问题中。您没有使用任何值初始化内核。。。所以它将包含随机值。所以只要:
matkernal5=newmat(5,5,CV_8U,255)(或者不管Java语法是什么…)