The problem is to architect and train a model which is able to output the parameters of the circle present inside of a given image under the presence of noise. The model should output a circle parameterized by (row, column, radius) which specifies the center coordinates of the circle in the image and the radius of the circle. Please do not use a pre-trained architecture/model and try not to spend more than 3-4 hours hours (not a hard rule) on this problem. (Excluding model training time)
Deliverables: (All 3 required)
Trained model and working find_circle method
The standard output of the model training in a file called training output.txt make sure that the training loss is visible in the output logs.
The code used to define & train the model
Try to get as high of a score as you can but .9 is the minimum for your submission to be consider using the metric AP@0.7. The provided main function will evaluate this metric on 1000 examples with a noise level of 2, we will use this main function to evaluate the model you produce.
Model Architecture. You do not need to use an unnecessarily large CNN backbone (> 10 convolutional/linear layers or >1M trainable parameters)
Loss function and optimizer used to train the model
Code quality and cleanliness. Please make sure to follow the general python conventions
The model should output a circle parameterized by (row, column, radius) which specifies the center coordinates of the circle in the image and the radius of the circle.
The attachments are only samples. You should generate your own data w/the function provided.