See that thread to save an image from the canvas. Just make a smaller canvas, draw jour circle and save it.
from tkinter import *
from PIL import ImageGrab
def getter(widget):
x=root.winfo_rootx()+widget.winfo_x()
y=root.winfo_rooty()+widget.winfo_y()
x1=x+widget.winfo_width()
y1=y+widget.winfo_height()
ImageGrab.grab().crop((x,y,x1,y1)).save("file path here")
root = Tk()
cv = Canvas(root)
cv.create_rectangle(10,10,50,50)
cv.pack()
root.mainloop()
See PhotoImage to load an image from a file.
from tkinter import PhotoImage
PhotoImage(file="path to image file")
Use canvas.create_image(x_pos, y_pos, image=some photoimage)
to draw it.
from tkinter import PhotoImage
image = PhotoImage(file="path to image file")
root = Tk()
cv = Canvas(root)
cv.create_image(10,10, image=image)
cv.pack()
root.mainloop()