You're starting with an image, and trying to overlay pathfinding information onto that. Generally this would be approached in one of the following ways
Create a background image, then use XML, JSON or some other file-based data format to create the metadata, by hand. This is trial and error, since you have to guess the positions and then test, guess and then test, ad nauseum.
Create a background image, then use a custom tool to then array an A* node map over this. If you can't find the tool, you'll need to make one. This is easier than writing this into a file as raw data, by hand. I would just put a different mode into the game engine that allows you to load a map and click to create and join up map nodes over this, and then save this out to file. This is ultimately why many games have editors built in, that you can access from the menu -- it was for the developers' convenience. This, in your case, is probably the most sensible approach.
Generate image map at same time A* graph; this is a purely procedural approach and only useful if you are generating only random levels. The idea here is that the topology (connectedness i.e. A* map) of the level is generated, and then from that, the background image is generated. Of course, this takes control of the art out of the hands of developer and artists, to some degree.
You can try to do it procedurally, it's going to be substantially more difficult though. If you are adamant about going down this route, obviously your approach has to be based on pixel colours, and so you may need to generate a secondary image that is used purely for A* pathing determination.