public classImageCheck {static{
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
}public static voidmain(String[] args) throws IOException {//Mat mat = Imgcodecs.imread("G:\\images\\used\\4.jpg");//Mat mat1 = Imgcodecs.imread("G:\\images\\used\\7.jpg");//Integer dhashGRAY28 = DhashDetector.getDhashGRAY28(mat);//Integer dhashGRAY281 = DhashDetector.getDhashGRAY28(mat1);//System.out.println(dhashGRAY28);//System.out.println(dhashGRAY281);
File file= new File("G:\\images\\used");
File[] tempFiles=file.listFiles();
List params = new ArrayList<>();
Integer dhash= 268423200;for (int i = 0 ; i < tempFiles.length;i++) {if(tempFiles[i].isFile()){params.add(tempFiles[i].getPath());
}
}
BufferedWriter bwScdPca= new BufferedWriter(new FileWriter("G:\\images\\error1.txt"));
List res = new ArrayList<>();for (String path:params) {
String[] split= path.split("\\\\");
String now= split[split.length - 1].replace(".jpg", "");
System.out.println(now);
Mat mat=Imgcodecs.imread(path);try{
Integer dhashGRAY28=DhashDetector.getDhashGRAY28(mat);if (DhashDetector.calcHammingDistance(dhash,dhashGRAY28) < 2) {
res.add(Integer.parseInt(now));
}
}catch(Exception e) {
System.out.println(e);
}
mat.release();
}
res=res.stream().sorted().collect(Collectors.toList());
System.out.println(res);for(Integer re :
res) {
bwScdPca.write(re+"");
bwScdPca.newLine();
bwScdPca.flush();
}
bwScdPca.close();
}
}