Pillow Python நூலகத்தில் "draw_vertices" செயல்பாட்டைப் பயன்படுத்தி பொருளின் எல்லைகளை வரையும்போது படத்தில் காட்சி உரையைச் சேர்க்க, நாம் ஒரு படிப்படியான செயல்முறையைப் பின்பற்றலாம். கூகுள் விஷன் ஏபிஐ இலிருந்து கண்டறியப்பட்ட பொருட்களின் செங்குத்துகளை மீட்டெடுப்பதும், செங்குத்துகளைப் பயன்படுத்தி பொருளின் எல்லைகளை வரைவதும், இறுதியாக படத்தில் காட்சி உரையைச் சேர்ப்பதும் இந்தச் செயல்முறையில் அடங்கும்.
1. கண்டறியப்பட்ட பொருட்களின் முனைகளை மீட்டெடுக்கவும்:
- ஒரு படத்தில் உள்ள பொருட்களைக் கண்டறிய Google Vision API ஐப் பயன்படுத்தவும்.
- API பதிலில் இருந்து கண்டறியப்பட்ட ஒவ்வொரு பொருளின் முனைகளையும் பிரித்தெடுக்கவும். செங்குத்துகள் பொருளைச் சுற்றியுள்ள எல்லைப் பெட்டியின் நான்கு மூலைகளைக் குறிக்கின்றன.
2. செங்குத்துகளைப் பயன்படுத்தி பொருளின் எல்லைகளை வரையவும்:
- பைத்தானில் உள்ள தலையணை நூலகத்தைப் பயன்படுத்தி படத்தை ஏற்றவும்.
- தலையணை நூலகத்திலிருந்து ImageDraw தொகுதியின் உதாரணத்தை உருவாக்கவும்.
– ஒவ்வொரு பொருளின் செங்குத்துகளின் மேல் திரும்பவும் மற்றும் ImageDraw தொகுதியிலிருந்து "draw.rectangle" செயல்பாட்டைப் பயன்படுத்தி ஒரு செவ்வகத்தை வரையவும்.
– "draw.rectangle" செயல்பாடு செவ்வகத்தின் மேல்-இடது மற்றும் கீழ்-வலது மூலைகளின் ஆயங்களை வாதங்களாக எடுத்துக்கொள்கிறது.
3. படத்தில் காட்சி உரையைச் சேர்க்கவும்:
- ImageDraw தொகுதியின் மற்றொரு நிகழ்வை உருவாக்கவும்.
– ஒவ்வொரு பொருளின் செங்குத்துகளையும் மீண்டும் செய்யவும் மற்றும் ImageDraw தொகுதியிலிருந்து "draw.text" செயல்பாட்டைப் பயன்படுத்தி காட்சி உரையைச் சேர்க்கவும்.
– "draw.text" செயல்பாடு உரை நிலை மற்றும் உரை சரத்தின் ஆயங்களை வாதங்களாக எடுத்துக்கொள்கிறது.
- "draw.text" செயல்பாட்டில் கூடுதல் அளவுருக்களைக் குறிப்பிடுவதன் மூலம் உரையின் எழுத்துரு, அளவு, நிறம் மற்றும் பிற பண்புகளை நீங்கள் தனிப்பயனாக்கலாம்.
மேலே விவரிக்கப்பட்ட செயல்முறையை விளக்கும் ஒரு எடுத்துக்காட்டு குறியீடு துணுக்கு இங்கே:
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")
இந்த எடுத்துக்காட்டில், Google Vision API இலிருந்து பொருள்களின் செங்குத்துகள் ஏற்கனவே பெறப்பட்டதாக நாங்கள் கருதுகிறோம். தலையணை நூலகத்தைப் பயன்படுத்தி படத்தை ஏற்றுவோம், செங்குத்துகளைப் பயன்படுத்தி பொருளின் எல்லைகளை வரைகிறோம், மேலும் ஒவ்வொரு பொருளின் மேலேயும் காட்சி உரையைச் சேர்ப்போம்.
எழுத்துரு, எழுத்துரு அளவு மற்றும் உரை வண்ணம் போன்ற உங்கள் குறிப்பிட்ட தேவைகளுக்கு ஏற்ப குறியீட்டை சரிசெய்ய நினைவில் கொள்ளுங்கள்.
தொடர்பான பிற சமீபத்திய கேள்விகள் மற்றும் பதில்கள் தலையணை பைதான் நூலகத்தைப் பயன்படுத்தி பொருள் எல்லைகளை வரைதல்:
- வழங்கப்பட்ட குறியீட்டில் உள்ள "draw.line" முறையின் அளவுருக்கள் என்ன, அவை செங்குத்து மதிப்புகளுக்கு இடையே கோடுகளை வரைய எப்படிப் பயன்படுத்தப்படுகின்றன?
- பைத்தானில் பொருள் எல்லைகளை வரைய தலையணை நூலகத்தை எவ்வாறு பயன்படுத்தலாம்?
- வழங்கப்பட்ட குறியீட்டில் "draw_vertices" செயல்பாட்டின் நோக்கம் என்ன?
- ஒரு படத்தில் உள்ள வடிவங்கள் மற்றும் பொருட்களைப் புரிந்துகொள்ள Google Vision API எவ்வாறு உதவும்?
மேலும் கேள்விகள் மற்றும் பதில்கள்:
- களம்: செயற்கை நுண்ணறிவு
- திட்டம்: EITC/AI/GVAPI கூகிள் விஷன் API (சான்றிதழ் திட்டத்திற்குச் செல்லவும்)
- பாடம்: வடிவங்கள் மற்றும் பொருள்களைப் புரிந்துகொள்வது (தொடர்புடைய பாடத்திற்குச் செல்லவும்)
- தலைப்பு: தலையணை பைதான் நூலகத்தைப் பயன்படுத்தி பொருள் எல்லைகளை வரைதல் (தொடர்புடைய தலைப்புக்குச் செல்லவும்)
- தேர்வு ஆய்வு