Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में इमेज को ASCII इमेज में परिवर्तित करना

इस लेख में हम एक दी गई इमेज को टेक्स्ट आधारित इमेज में परिवर्तित करना चाहते हैं जिसे ASCII इमेज भी कहा जाता है।

नीचे पायथन प्रोग्राम है जो एक इनपुट इमेज लेगा और विभिन्न फ़ंक्शन का उपयोग करके उन्हें ग्रेस्केल पिक्चर में परिवर्तित करेगा और फिर इमेज में विभिन्न पैटर्न बनाने के लिए ASCII वर्णों को लागू करेगा। अंत में इमेज टेक्स्ट आधारित इमेज के रूप में आती है जो प्लेन ASCII वर्णों की एक श्रृंखला है।

उदाहरण

from PIL import Image
import os

ASCII_CHARS = ['#', '?', '%', '.', 'S', '+', '.', '*', ':', ',', '@']

def resize_image(image, new_width=25):
    (input_width, input_height) = image.size
    aspect_ratio = input_height / float(input_width)
    changed_height = int(aspect_ratio * new_width)
    changed_image = image.resize((new_width, changed_height))
    return changed_image

def make_grey(image):
    return image.convert('L')

def pixel_to_ascii(image, range_width=25):
    pixels_in_image = list(image.getdata())
    pixels_to_chars = [ASCII_CHARS[pixel_value // range_width] for pixel_value in pixels_in_image]
    return "".join(pixels_to_chars)

def image_to_ascii(image, new_width=25):
    image = resize_image(image)
    image = make_grey(image)
    pixels_to_chars = pixel_to_ascii(image)
    len_pixels_to_chars = len(pixels_to_chars)
    image_ascii = [pixels_to_chars[index: index + new_width] for index in range(0, len_pixels_to_chars, new_width)]
    return "\n".join(image_ascii)

def convert_image(image_filepath):
    try:
        image = Image.open(image_filepath)
    except Exception as e:
        print("Unable to open image file {image_filepath}.".format(image_filepath=image_filepath))
        print(e)
        return
    image_ascii = image_to_ascii(image)
    f = open(os.path.splitext(image_filepath)[0] + '.txt', 'w')
    f.write(image_ascii)
    f.close()

convert_image('D:\\button.jpg')

आउटपुट

उपरोक्त कोड चलाने पर हमें निम्न परिणाम मिलता है -

इनपुट इमेज

पायथन में इमेज को ASCII इमेज में परिवर्तित करना

आउटपुट इमेज

पायथन में इमेज को ASCII इमेज में परिवर्तित करना

  1. पायथन का उपयोग करके छवियों को पढ़ना पायथन का उपयोग करके छवियों को पढ़ना

    ओपनसीवी (OpenCV) का उपयोग करके छवि प्रसंस्करण ओपनसीवी (ओपन सोर्स कंप्यूटर विजन) एक ओपन सोर्स प्रोग्रामिंग लाइब्रेरी है जिसे मूल रूप से मशीन लर्निंग और कंप्यूटर विजन के लिए विकसित किया गया है। यह कंप्यूटर विजन अनुप्रयोगों पर काम करने के लिए सामान्य बुनियादी ढांचा प्रदान करता है और वाणिज्यिक उत्पादों

  1. Python में फोटोमोज़ाइक्स इम्प्लीमेंट करना Python में फोटोमोज़ाइक्स इम्प्लीमेंट करना

    फोटोमोज़ाइक एक तकनीक है, जहां हम अपनी इमेज को वर्गों के ग्रिड में विभाजित कर सकते हैं। प्रत्येक वर्ग को कुछ अन्य इमेज या रंगों द्वारा प्रतिस्थापित किया जाएगा। इसलिए जब हम एक निश्चित दूरी से वास्तविक इमेज देखना चाहते हैं, तो हम वास्तविक इमेज देख सकते हैं, लेकिन यदि हम करीब आते हैं, तो हम अलग-अलग रंगी

  1. पायथन में सौर छवि प्लॉट करना पायथन में सौर छवि प्लॉट करना

    पायथन में सौर छवि बनाने के लिए SunPy पैकेज प्रदान करता है। इस पैकेज में विभिन्न फ़ाइलें हैं जो विभिन्न सौर वेधशालाओं और सौर प्रयोगशालाओं से प्रोटॉन/इलेक्ट्रॉन फ्लक्स का सौर डेटा हैं। pip install sunpy कमांड का उपयोग करके, हम sunpy पैकेज स्थापित कर सकते हैं। यहाँ हम एक नमूना AIA छवि प्लॉट करते हैं।