Изображение отображается нормально для меня. Добавили ли вы какой-либо код отладки для отображения предпочтительного размера изображения, чтобы убедиться, что оно было правильно прочитано.
Кроме того, после того как ваше изображение заработает, вы не увидите компоненты, которые фактически добавляете на панель изображений. Знаете ли вы, что делает следующая строка кода, или вы просто скопировали ее откуда-то? Избавьтесь от этого:
setLayout(null);
Почему вы создаете пустую панель, а затем создаете ImagePanel?
panel = new JPanel(); //creates a panel
ImagePanel panel = new ImagePanel(new ImageIcon("/mousepics/backgroundspacepic.jpeg").getImage());