কম্পিউটার টিউটোরিয়াল

পাইথনে ইমেজ ফ্লিপ ও ইনভার্ট (Flipping an Image)


সমস্যা বিবরণ

একটি বাইনারি ম্যাট্রিক্স (ইমেজ) দেওয়া থাকে। প্রথমে প্রতিটি সারি উল্টে দিন (horizontally flip), তারপর প্রতিটি ০ কে ১ এবং ১ কে ০ করুন (invert)। ফলাফল রিটার্ন করুন।

উদাহরণ

ইনপুট:

[[1,1,0],
 [1,0,1],
 [0,0,0]]
আউটপুট:
[[1,0,0],
 [0,1,0],
 [1,1,1]]

এলগরিদম

  1. ফলাফল সংরক্ষণের জন্য খালি লিস্ট result।
  2. প্রতিটি সারি row এর জন্য:
    • reversed_row = row[::-1] (সারি উল্টান)।
    • প্রতিটি এলিমেন্ট j এর জন্য: reversed_row[j] = 1 - reversed_row[j] (ইনভার্ট)।
    • result.append(reversed_row)।
  3. result রিটার্ন করুন।

পাইথন বাস্তবায়ন

class Solution:
    def flipAndInvertImage(self, A):
        result = []
        for row in A:
            rev = row[::-1]
            for j in range(len(rev)):
                rev[j] = 1 - rev[j]  # 0→1, 1→0
            result.append(rev)
        return result

ob = Solution()
print(ob.flipAndInvertImage([[1,1,0],[1,0,1],[0,0,0]]))
# আউটপুট: [[1, 0, 0], [0, 1, 0], [1, 1, 1]]

ইনপুট / আউটপুট

ইনপুট: [[1,1,0],[1,0,1],[0,0,0]]
আউটপুট: [[1, 0, 0], [0, 1, 0], [1, 1, 1]]
  1. পাইথনে কনভোলিউশন (Convolutions) ব্যবহার

  2. পাইথনে ছবি পড়া (OpenCV এবং PIL ব্যবহার করে)

  3. পাইথনে ফোটোমোজেইক ইমপ্লিমেন্টেশন (Photomosaics)

  4. পাইথনে SunPy ব্যবহার করে সৌর ছবি প্লট করা