I suggest iterating through the image data.

Determine the formula for the smallest circle which contains all the opaque points inside or on the circle.

The center of that circle would be the center of the opaque object.

[Edit]

Find the two points that are farthest apart.

distance = sqrt((x1 - x2)^2 + (y1 - y2)^2)

Then make a circle with those two points

(distance /2 )^2 = (x - (x1+x2)/2)^2 + (y - (y1+y2)/2)^2

if all other points are in this circle, then you have the center point of ((x1+x2)/2, (y1+y2)/2)

if not, take the point farthest from the circle and combine with your original 3 points to form a circle

r^2 = (x - h)^2 + (y - k)^2

3 points : (a,b) (c,d) (e,f)

h = (1/2)((a²+b²)(f-d) + (c²+d²)(b-f) + (e²+f²)(d-b)) / (a(f-d)+c(b-f)+e(d-b))

k = (1/2)((a²+b²)(e-c) + (c²+d²)(a-e) + (e²+f²)(c-a)) / (b(e-c)+d(a-e)+f(c-a))

r² = (a-h)² + (b-k)²

(h,k) is the center point

15,851,090 members