Como eu posso converter vários arrays de int[] em um array de double[][]?
Na verdade você não precisa converter nada, pois como double é maior que int, int é perfeitamente aceito em double.
Agora depende de quantos vetores de int você pretende atribuir em uma matriz double, pois é necessário especificar o tamanho.
Já fez alguma coisa, poste pra gente ver.
Esse é o problema eu não tenho o tamanho exato da matriz.
Estou passando várias imagens binarizadas para obter um conjunto de pontos específicos nelas. A quantidade delas é desconhecida, pode variar para mais ou para menos sempre.
[code]double[][] trainArray;
harris hs = new harris();
int w = 0, h = 0, j =0;
int[] orig;
File diretoryTrain = new File(“D:/COISAS/workspace/OCR/Treino/”);
for(File file : diretoryTrain.listFiles()) {
if(file.isFile()){
BufferedImage buff = null;
try {
buff = ImageIO.read(file);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
w = buff.getWidth();
h = buff.getHeight();
orig = new int[w*h];
File outputfile = new File("saved.png");
try {
ImageIO.write(buff, "png", outputfile);
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} // Write the Buffered Image into an output file
Image im = null;
try {
im = ImageIO.read(new File("saved.png"));
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} // Opening again as an Image
PixelGrabber grabber = new PixelGrabber(im, 0, 0, w, h, orig, 0, w);
try {
grabber.grabPixels();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
hs.init(orig, w, h, 0.05);
orig = hs.process();
for(int i=0; i<orig.length ; i++){
trainArray[j][i] = orig[i];
}
System.out.println(j);
j++;
}
}
[/code]
Mais ou menos assim
Você pode usar mapa:
Map<Integer, double[]> trainMap = new HashMap<Integer, double[]>();
...
trainMap.put(i, orig);
No caso da chave coloquei Integer (classe), pois o mapa não aceita tipos primitivos (int, double, etc), no caso do array ele aceita porque em Java, array é um objeto.
E nesse exemplo fica mais fácil pois não preciso percorrer o array e adicionar um por um.
Veja se isso te atende, tanto a interface Map quanto a classe HashMap estão no pacote java.util.