Да бисмо додали приказни текст на слику када цртате границе објекта користећи функцију „драв_вертицес“ у библиотеци Пиллов Питхон, можемо да пратимо процес корак по корак. Овај процес укључује преузимање врхова откривених објеката из Гоогле Висион АПИ-ја, цртање граница објеката помоћу врхова и коначно додавање текста за приказ слици.
1. Преузми врхове откривених објеката:
– Користите Гоогле Висион АПИ за откривање објеката на слици.
– Издвојите врхове сваког откривеног објекта из АПИ одговора. Врхови представљају четири угла граничне кутије која окружује објекат.
2. Нацртајте границе објеката користећи врхове:
– Учитајте слику користећи библиотеку јастука у Питхон-у.
– Креирајте инстанцу модула ИмагеДрав из библиотеке јастука.
– Итерирајте преко врхова сваког објекта и нацртајте правоугаоник користећи функцију „драв.рецтангле“ из модула ИмагеДрав.
– Функција „драв.рецтангле“ узима координате горњег левог и доњег десног угла правоугаоника као аргументе.
3. Додајте текстуални приказ на слику:
– Креирајте другу инстанцу модула ИмагеДрав.
– Пређите преко врхова сваког објекта и додајте текст за приказ користећи функцију „драв.тект“ из модула ИмагеДрав.
– Функција „драв.тект“ узима координате позиције текста и текстуални низ као аргументе.
– Можете прилагодити фонт, величину, боју и друга својства текста навођењем додатних параметара у функцији „драв.тект“.
Ево примера исечка кода који демонстрира процес описан горе:
python from PIL import Image, ImageDraw, ImageFont # Step 1: Retrieve the vertices of the detected objects # (Assuming you have already obtained the vertices from the Google Vision API) vertices = [ [(100, 100), (200, 100), (200, 200), (100, 200)], # Example vertices of object 1 [(300, 150), (400, 150), (400, 250), (300, 250)] # Example vertices of object 2 ] # Step 2: Draw object borders using the vertices image = Image.open("input_image.jpg") draw = ImageDraw.Draw(image) for vertex in vertices: draw.rectangle(vertex, outline="red") # Step 3: Add display text to the image font = ImageFont.truetype("arial.ttf", 12) text_draw = ImageDraw.Draw(image) for i, vertex in enumerate(vertices): text_position = vertex[0][0], vertex[0][1] - 20 text_draw.text(text_position, f"Object {i+1}", font=font, fill="red") # Save the modified image image.save("output_image.jpg")
У овом примеру претпостављамо да су врхови објеката већ добијени из Гоогле Висион АПИ-ја. Затим учитавамо слику користећи библиотеку јастука, цртамо границе објекта користећи врхове и додајемо текст за приказ изнад сваког објекта.
Не заборавите да прилагодите код према вашим специфичним захтевима, као што су фонт, величина фонта и боја текста.
Остала недавна питања и одговори у вези Цртање граница предмета помоћу библиотеке јастука питхон:
- Који су параметри методе "драв.лине" у датом коду и како се користе за цртање линија између вредности врхова?
- Како се библиотека јастука може користити за цртање граница објеката у Питхон-у?
- Која је сврха функције "драв_вертицес" у датом коду?
- Како Гоогле Висион АПИ може помоћи у разумевању облика и објеката на слици?