According to the GLSL 4.50 spec, imageAtomicAdd() requires a image variable with the coherent memory qualifier.
This makes sense because an atomic add needs to read the old value, add a value to it, and write back the result. Therefore, it needs to be able to both read and write the image.
To make this work, you need to change the declaration to:
Friends i see your question here. But i do not understand last answer that you say “You Got Answer”. But i am not understand how can you calculate it ?