0

64x128 픽셀의 이미지를 4x8 및 8x16 격자로 잘라내어 Temp 폴더에 저장하여 이미지 분류에서 피쳐를 추출합니다. 메신저가 여러 이미지에 대한 반복 작업을하는 동안 (첫 번째 이미지 자르기, 8x16 하위 이미지 가져 오기, 각 하위 이미지에 대한 기능 추출, 다음 이미지로 이동 및 기존 하위 이미지 덮어 쓰기) 임의의 격자에서 "파일을 찾을 수 없음"예외가 발생합니다. 상기 그리드 셀에 대한 액세스가 거부 되었기 때문이다. 이는 많은 수의 이미지 (20 개 이상)로 작업 할 때만 발생합니다. 이 문제를 어떻게 해결할 수 있습니까?java.io.FileNotFoundException : Image.IO.write에서 액세스가 거부되었습니다.

잘라 내기 부분에 대한 내 코드 :

package imageProcess; 

import java.awt.image.BufferedImage; 
import java.io.File; 
import java.io.IOException; 

import javax.imageio.ImageIO; 

public class Crop_Raster { 

BufferedImage src; 
BufferedImage dst; 


public Crop_Raster(BufferedImage src) { 
    super(); 
    this.src = src; 
} 

public void cropImage_4x8() throws IOException{ 
    int filenumber = 1; 
    for (int y = 0;y<4;y++){ 
     for (int x = 0; x<8;x++){ 
      File output = new File("Temp/"+filenumber+".jpg"); 
      dst = src.getSubimage(16*x,16*y, 16, 16); 
      ImageIO.write(dst, "jpg", output); 
      filenumber ++; 
     } 
    } 
} 

public void cropImage_8x16() throws IOException{ 
    int filenumber = 1; 
    for (int y = 0;y<8;y++){ 
     for (int x = 0; x<16;x++){ 
      File output = new File("Temp/"+filenumber+".jpg"); 
      dst = src.getSubimage(8*x,8*y, 8, 8); 
      ImageIO.write(dst, "jpg", output); 
      filenumber ++; 
     } 
    } 
} 

내 6 교육 이미지의 두 번째 서브 이미지 처리하는 동안 발생하는 다음과 같은 예외를 얻을 :

java.io.FileNotFoundException: Temp\2.jpg (Zugriff verweigert) 
at java.io.RandomAccessFile.open0(Native Method) 
at java.io.RandomAccessFile.open(Unknown Source) 
at java.io.RandomAccessFile.<init>(Unknown Source) 
at javax.imageio.stream.FileImageOutputStream.<init>(Unknown Source) 
at com.sun.imageio.spi.FileImageOutputStreamSpi.createOutputStreamInstance(Unknown Source) 
at javax.imageio.ImageIO.createImageOutputStream(Unknown Source) 
at javax.imageio.ImageIO.write(Unknown Source) 
at imageProcess.Crop_Raster.cropImage_8x16(Crop_Raster.java:38) 
at svm.CreateVektor.createVector_8x16(CreateVektor.java:94) 
at Main_Test.main(Main_Test.java:107) 

오류가 자르기 부분에서 발생합니다 나머지 메서드는 제대로 작동합니다.

답변

0

각 이미지가 끝난 후 Temp 폴더를 지우면 문제가 해결되었습니다.

관련 문제