I don't know of a way to do that
without Inserting one into a drawing, but once you've Inserted one, you can. It involves getting the Block definition
as an object with something like [if your Stop Sign is called "StopSign"]:
(setq ent (tblobjname "block" "StopSign"))
and then stepping through the things that make it up, which are the next entity, and the next, etc.:
(setq ent (entnext ent))
At each step, you can get entity data about the piece you're up to, and handle it any way you like. The key is that those entities that make up the Block are all defined in terms of locational information in relation to the Block's defined insertion point. So, if the word "STOP" in your Stop Sign is middle-justified at the center of the sign, and the Block's insertion point is 0,0, you could step through and check each entity for whether it's Text [on the assumption that there won't be any other Text object(s) in a Stop Sign Block], and if it is, get its insertion point, which in your example will be that 20,50 location, and stop looking further. Similarly, if something is round, and doesn't have any Circles in it other than its outline, you could look at the pieces until you find a Circle, and get its center.
In Blocks that don't have some specific entity from which the middle location can be pulled like that, you could step through things and get their bounding boxes, keeping tabs on the lower left and upper right corner of each and saving the extremes, then find the midpoint between the outermost extents of all the objects. [That does have the possibility of incorrect results in some circumstances, since some objects' bounding boxes can at least sometimes extend beyond their actual graphic extent -- Splines and Mtext are examples, and there might be others.]