Con el fin de que la imagen quede almacenada dentro del archivo ejecutable que se distribuya finalmente, debe almacenarse dentro de la carpeta Source Packages. Y para que quede todo mejor organizado, lo ideal es crear un subpaquete (por ejemplo, images) dentro del paquete donde se encuentre el código fuente que vaya a cargar la imagen.
Código para cargar la image en un objeto ImageView:
Image image1 = new Image(getClass().getResourceAsStream("images/ship.png"));
ImageView imageView1 = new ImageView(image1);
Si desea colocar la imagen en algún lugar concreto de la pantalla (ten en cuenta que se considera como punto de referencia la esquina superior izquierda de la imagen):
imageView1.setX(50);
imageView1.setY(50);
Recuerda que el objeto ImageView que se ha creado debe añadirse a la lista de hijos del contenedor que vaya a almacenar la imagen. Por ejemplo, con algo como:
root.getChildren().add(imageView1);