guardar imágenes en formato de cadena (para usar en xml) ... no funciona

Estoy convirtiendo la imagen del selector en nsdata (representación jpeg) y luego convirtiéndola en nsstring usando el siguiente código

 NSData *data=UIImageJPEGRepresentation(image,1.0);
 NSString *imageString=[[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];
[[NSUserDefaults standardUserDefaults] setObject:imageString forKey:@"image_name"];

y en el otro extremo donde necesito mostrar la imagen, la imagen de usuario se forma de la siguiente manera.

 NSString *imageString=[[NSString alloc] init];
 imageString=[[NSUserDefaults standardUserDefaults] objectForKey:@"image_name"];
 UIImage *image=[UIImage imageWithData:[imageString dataUsingEncoding:NSUTF8StringEncoding]];

la variable de imagen utilizada en el código superior no es nula, pero la imagen formada a partir de los datos se está volviendo nula ... cuando se registran los valores predeterminados del usuario, hay alguna cadena presente para la clave mencionada anteriormente. ¿Alguien puede explicar por qué es esto? la forma correcta de hacer esto

Respuestas a la pregunta(2)

Su respuesta a la pregunta