আমাদের দৈনন্দিন জীবনে AI বা Artificial Intelligence–এর উপর নির্ভরশীলতা বেড়েই চলেছে। স্কুল, কলেজ, অফিস কিংবা বাসা – প্রতিদিনই কোনো না কোনোভাবে আমরা AI ব্যবহার করছি। যা এখন প্রতিনিয়ত প্রভাব বিস্তার করছে Embedded System Development–এ, যেখানে Edge AI নামক একটি নতুন Technology দ্রুত জনপ্রিয় হয়ে উঠছে।
Edge AI–এর মধ্যে সবচেয়ে প্রচলিত অ্যাপ্লিকেশন হলো Computer Vision ভিত্তিক Detection Model। আর এই ধরনের মডেল ডেভেলপমেন্টের জন্য সবচেয়ে cost-efficient এবং practical সমাধান হচ্ছে ESP32-CAM Module। কারণ এতে রয়েছে on-board ক্যামেরা, Micro SD কার্ড সাপোর্ট, PSRAM এবং Wi-Fi ও Bluetooth–সহ Powerful ESP32 মাইক্রোকন্ট্রোলার।
এমনকি IoT এবং Home Automation ডেভেলপমেন্টে Gesture Control এবং Face Recognigation এর মতো AI মডেলের ব্যবহার খুব দ্রুত বাড়ছে। আর এই ধরণের কাজের জন্য ESP32-CAM অন্যতম জনপ্রিয় বোর্ড হিসেবে ব্যবহার করা হয়।
এই টিউটোরিয়ালে আমরা দেখবো—কিভাবে ESP32-CAM ব্যবহার করে ক্যামেরার লাইভ ভিডিও Web Server–এ স্ট্রিম করা যায়। তাই ধাপে ধাপে পুরো সেটআপ, কনফিগারেশন এবং প্রোগ্রামিং প্রক্রিয়া ব্যাখ্যা করা থাকবে, যাতে আপনি খুব সহজেই পুরো প্রোজেক্টটি সফলভাবে Run করতে পারেন।
প্রিরিকুইজিট
বোর্ডটিকে কম্পিউটারের সাথে সংযোগ এবং প্রোগ্রাম করার জন্য প্রয়োজনীয় ধাপ গুলো নিচে ব্যাখা করা হলো।
- আরডুইনো IDE ইন্সটল
- ESP32-CAM কে প্রোগ্রাম করতে হলে, অবশ্যই কম্পিউটারে Arduino IDE টি ইন্সটল করা থাকতে হবে। (আরডুইনো IDE ইন্সটল সম্পর্কে বিস্তারিত জানতে এই লিংকে ভিজিট করুন।)

- আরডুইনো IDE তে ESP32 বোর্ড ইন্সটল
- যেহেতু ESP32-CAM মডিউলের মেইন SoC হিসেবে ESP32 সিরিজের মাইক্রোকন্ট্রোলার ব্যবহার করা হয়েছে। তাই এ পর্যায়ে ESP32 বোর্ডটি Arduino IDE তে ইন্সটল করে নিতে হবে।

কোড আপলোড
ESP32 এর বোর্ড প্যাকেজ Install হলে, প্রথমে Tools → Board → esp32 মেনুতে প্রবেশ করে বোর্ড হিসেবে “AI Thinker ESP32-CAM” সিলেক্ট করুন।

এবার File → Examples → ESP32 → Camera → CameraWebServer এ ক্লিক করুন।

সাথে সাথে নতুন একটি Window তে Example Code টি Open হবে।

এরপর ওপরের ট্যাবগুলো থেকে board_config.h হেডার ফাইলটিতে ক্লিক করুন।

সেখানে, ডিফল্টভাবে #define CAMERA_MODEL_ESP_EYE লাইনটি Uncomment করা থাকে। প্রথমে এটিকে Comment করে, #define CAMERA_MODEL_AI_THINKER লাইনটি Uncomment করুন।

এখন Tab Section থেকে CameraWebServer.ino ট্যাবে ক্লিক করুন। এখানে নিজের WiFi Credentials (SSID এবং Password) সেট করতে হবে।

এরপর Tools → Partition Scheme হিসেবে Huge APP (3MB No OTA/1MB SPIFFS) নির্বাচন করতে হবে।

প্রথমে Windows Start বাটন ক্লিক করে Device Manager অপশনটি চালু করে Ports (COM & LPT) সেকশনটি Expand করে নিন। এখন Micro USB ব্যবহার করে ESP32-CAM Module-টি পিসির সাথে সংযোগ দিন। Device Manager উইনডোউটি রিফ্রেশ হবে এবং নতুন একটি COM Port দেখা যাবে। যেমন আমার এখানে USB-SERIAL CH340 (COM11) পোর্টটি ডিটেক্ট হয়েছে। আপনার ক্ষেত্রে তা COM8, COM10, COM15… ইত্যাদি যা কিছু হতে পারে।

এখন Arduino IDE–এর Tools → Port থেকে Device Manager এ ডিটেক্ট হওয়া COM Port সিলেক্ট করে নিতে হবে।
(যেহেতু আমার ক্ষেত্রে পোর্ট হিসেবে COM11 ডিটেক্ট হয়েছে, তাই আমি COM11 সিলেক্ট করে নিয়েছি।)

সবকিছু ঠিক থাকলে Upload বাটন প্রেস করুন।

ESP32-CAM-এ কোড আপলোড করার সময় Arduino IDE-র Output সেকশনে “Connecting……….…..” বার্তা দেখা যাবে।

এই অবস্থায় বোর্ডটি হাতে নিয়ে RST বাটনটি একবার চাপ দিয়ে ছেড়ে, সাথে সাথেই FLASH বাটনটি একবার চাপ দিয়ে ছেড়ে দিতে হবে।

সাথে সাথে বোর্ডটি প্রোগ্রামিং মোডে ঢুকে যাবে, এবং কোড আপলোড সফলভাবে শুরু হবে। সফলভাবে আপলোড সম্পন্ন হলে Hard resetting via RTS pin… দেখা যাবে।

এরপর Serial Monitor ওপেন করে বডরেট 115200-এ সেট করুন।

ESP32-CAM এর RST বাটন চেপে Reset দিন। কিছুক্ষণের মধ্যেই একটি IP Address দেখা যাবে।

এই IP Address কপি করে ব্রাউজারের Address Bar এ পেস্ট করি। তারপর Enter দিলে ক্যামেরা Web Server ওপেন হবে।

Web Server-এর কন্ট্রোল প্যানেল থেকে যেকোনো Resolution নির্বাচন করে Start Stream চাপলেই লাইভ ভিডিও শুরু হয়ে যাবে। এই প্যানেলের ডান দিকে থাকা সেটিংসগুলো ব্যবহার করে Brightness, Contrast, Saturation সহ নানা প্যারামিটার পরিবর্তন করে ক্যামেরার আউটপুটকে নিজের প্রয়োজন অনুযায়ী টিউন করা যায়।


Project Done
Great, thanks for being with us.