MATLAB中如何准确定位多个圆

工业现场,要检测工件上边的多个圆孔,因光照条件的影响,上边会有阴影,有什么好的去除阴影的方法?MATLAB中试过高斯滤波->二值化->开闭操作,效果不是很好。有什么好的方法,请指导一下。。。