সুচিপত্র:

রাস্পবেরি পাই সহ একটি রেফ্রিজারেটরের জন্য মুখের স্বীকৃতি সুরক্ষা ব্যবস্থা: 7 টি ধাপ (ছবি সহ)
রাস্পবেরি পাই সহ একটি রেফ্রিজারেটরের জন্য মুখের স্বীকৃতি সুরক্ষা ব্যবস্থা: 7 টি ধাপ (ছবি সহ)

ভিডিও: রাস্পবেরি পাই সহ একটি রেফ্রিজারেটরের জন্য মুখের স্বীকৃতি সুরক্ষা ব্যবস্থা: 7 টি ধাপ (ছবি সহ)

ভিডিও: রাস্পবেরি পাই সহ একটি রেফ্রিজারেটরের জন্য মুখের স্বীকৃতি সুরক্ষা ব্যবস্থা: 7 টি ধাপ (ছবি সহ)
ভিডিও: যে কোনো কাজে সফলতা অর্জনের দুইটি পূর্বশর্ত 2024, নভেম্বর
Anonim
Image
Image
রাস্পবেরি পাই সহ একটি রেফ্রিজারেটরের জন্য মুখের স্বীকৃতি সুরক্ষা ব্যবস্থা
রাস্পবেরি পাই সহ একটি রেফ্রিজারেটরের জন্য মুখের স্বীকৃতি সুরক্ষা ব্যবস্থা
রাস্পবেরি পাই সহ একটি রেফ্রিজারেটরের জন্য মুখের স্বীকৃতি সুরক্ষা ব্যবস্থা
রাস্পবেরি পাই সহ একটি রেফ্রিজারেটরের জন্য মুখের স্বীকৃতি সুরক্ষা ব্যবস্থা

ইন্টারনেট ব্রাউজ করে আমি আবিষ্কার করেছি যে নিরাপত্তা ব্যবস্থাগুলির দাম 150 $ থেকে 600 $ এবং তার উপরে পরিবর্তিত হয়, কিন্তু সমস্ত সমাধান (এমনকি খুব ব্যয়বহুল) আপনার বাড়িতে অন্যান্য স্মার্ট সরঞ্জামগুলির সাথে একীভূত করা যায় না! উদাহরণস্বরূপ, আপনি আপনার সামনের দরজায় নিরাপত্তা ক্যামেরা স্থাপন করতে পারবেন না যাতে এটি স্বয়ংক্রিয়ভাবে আপনার বা আপনার বন্ধুদের জন্য দরজা খুলে দেয়!

আমি একটি সহজ, সস্তা এবং শক্তিশালী সমাধান করার সিদ্ধান্ত নিয়েছি, যা আপনি যে কোন জায়গায় ব্যবহার করতে পারেন! কিভাবে সস্তা এবং ঘরে তৈরি নিরাপত্তা ব্যবস্থা তৈরি করা যায় সে সম্পর্কে অনেক ম্যানুয়াল আছে, তবে আমি সেগুলোর সত্যিকারের অযৌক্তিক প্রয়োগ প্রদর্শন করতে চাই - মুখের স্বীকৃতি সহ ফ্রিজের জন্য নিরাপত্তা ব্যবস্থা!

এটা কিভাবে কাজ করে? রেফ্রিজারেটরের উপরে রাখা আইপি ক্যামেরা, সেন্সর (দুটি বোতাম) সনাক্ত করে যখন একজন ব্যক্তি রেফ্রিজারেটরের দরজা খুলে দেয়, তার পরে রাস্পবেরি পাই সেই ব্যক্তির ছবি (আইপি ক্যামেরা সহ) নেয়, তারপর মাইক্রোসফট ফেস এপিআইতে পাঠায় ছবিটি বিশ্লেষণ করতে এবং ব্যক্তির নাম গ্রহণ করতে। এই তথ্যের সাথে রাস্পবেরি পাই "অ্যাক্সেস তালিকা" স্ক্যান করে: যদি ব্যক্তির রেফ্রিজারেটর অ্যাক্সেস করার অনুমতি না থাকে, রাস্পবেরি ইমেল, পাঠ্য বার্তা এবং টুইটারের মাধ্যমে মালিককে অবহিত করে! (উপরের ছবি দেখুন)

কেন? সিস্টেমটি আপনাকে আপনার পরিবারের সদস্যদের নিয়ন্ত্রণ করতে দেয়, বিশেষ করে যখন তারা ডায়েটে থাকে, অথবা মধ্যরাতের পর না খেয়ে লড়াই করে! অথবা এটি শুধুমাত্র মজার জন্য ব্যবহার করুন!

তদুপরি, আপনি আসলে আপনার সামনের দরজায় ক্যামেরা সেট আপ করতে পারেন এবং সিস্টেমটি কনফিগার করতে পারেন যখন আপনি, আপনার পরিবারের সদস্য বা বন্ধুরা আসছেন। আর এখানেই শেষ নয়! আবেদনের সম্ভাবনা অফুরন্ত!

চল শুরু করি!

ধাপ 1: প্রস্তুতি

প্রস্তুতি
প্রস্তুতি

আপনার প্রয়োজন হবে:

  • রাস্পবেরি পাই 3 (আপনি পুরোনো সংস্করণ ব্যবহার করতে পারেন, কিন্তু তৃতীয় প্রজন্মের ওয়াই-ফাই রয়েছে, তাই এটি খুব সুবিধাজনক)
  • বোতাম
  • তারের
  • পুরানো স্মার্টফোন বা রাস্পবেরি পাই ক্যামেরা

আপনাকে যা করতে হবে তা হল আপনার রাস্পবেরি পাই কনফিগার করা। আপনি এখানে এবং এখানে কীভাবে এটি করতে পারেন সে সম্পর্কে বিস্তারিত নির্দেশাবলী, তবে আমরা এই ম্যানুয়ালের সবচেয়ে গুরুত্বপূর্ণ পদক্ষেপগুলি কভার করব।

  1. এখান থেকে Win32 DiskImager ডাউনলোড করুন (যদি আপনি উইন্ডোজ ব্যবহার করেন)
  2. এসডি ফরম্যাট এখান থেকে ডাউনলোড করুন
  3. আপনার কম্পিউটারে এসডি কার্ড andোকান এবং এসডি ফরম্যাটারের সাহায্যে ফরম্যাট করুন
  4. এখান থেকে রাস্পবিয়ান ছবি ডাউনলোড করুন ("পিক্সেল সহ রাস্পবিয়ান জেসি" বেছে নিন)
  5. Win32 DiskImager চালান, আপনার SD কার্ড নির্বাচন করুন, রাস্পবিয়ান ছবির পথ নির্দিষ্ট করুন, "লিখুন" ক্লিক করুন
  6. আপনার রাস্পবেরি পাইতে এসডি কার্ড andোকান এবং শক্তি চালু করুন!

উপরন্তু, SSH এর মাধ্যমে সিস্টেমে অ্যাক্সেস পেতে আপনার রাস্পবেরি পাই কনফিগার করতে হবে। ইন্টারনেটে প্রচুর নির্দেশনা রয়েছে, আপনি এটি ব্যবহার করতে পারেন, উদাহরণস্বরূপ, অথবা আপনি মনিটর এবং কীবোর্ড সংযুক্ত করতে পারেন।

এখন আপনার পাই কনফিগার করা হয়েছে এবং আপনি এগিয়ে যাওয়ার জন্য প্রস্তুত!

পদক্ষেপ 2: একটি সেন্সর তৈরি করা

একটি সেন্সর তৈরি করা
একটি সেন্সর তৈরি করা
একটি সেন্সর তৈরি করা
একটি সেন্সর তৈরি করা
একটি সেন্সর তৈরি করা
একটি সেন্সর তৈরি করা

ধাপের বিবরণ: এই ধাপে আমরা একটি সেন্সর তৈরি করব যা সনাক্ত করে যখন ব্যক্তি রেফ্রিজারেটরের দরজা খুলে রাস্পবেরি পাই সক্রিয় করে।

এটি সেট আপ করার জন্য আপনার 2 টি বোতাম প্রয়োজন যা আপনি মূলত প্রস্তুত করেছেন। দরজা খোলা হলে প্রথম বোতামটি সনাক্ত করা হবে, দ্বিতীয় বোতামটি সনাক্ত করা হবে যখন আমরা কোনও ব্যক্তির ছবি তুলছি তখন দরজাটি খোলা হবে।

  1. বোতামগুলিতে সোল্ডার তারগুলি।
  2. রেফ্রিজারেটরের দরজায় প্রথম বোতামটি সংযুক্ত করুন যাতে দরজা বন্ধ হয়ে গেলে এটি ধাক্কা দেয় (উপরের ছবিটি দেখুন)
  3. উপরের ছবিতে দেখানো ফ্রিজের দরজায় দ্বিতীয় বোতামটি সংযুক্ত করুন। এই বোতামটি সর্বদা রিলিজ করতে হবে, ব্যতীত যখন সিস্টেমটি ছবি তোলার সময় দরজাটি পৌঁছায়। এটি সেট আপ করার জন্য আপনাকে আপনার রেফ্রিজারেটরের সাথে কিছু সংযুক্ত করতে হবে যাতে দরজাটি পছন্দসই মাত্রায় খোলা অবস্থায় এই বোতামটি চাপানো হয় (উপরের ছবিগুলি দেখুন)।
  4. বোতাম থেকে রাস্পবেরি পাইতে তারগুলি সংযুক্ত করুন: জিপিআইও 23 এবং গ্রাউন্ডে প্রথম বোতাম, জিপিআইও 24 এবং মাটিতে দ্বিতীয় বোতাম (ফ্রিজিং ডায়াগ্রাম দেখুন)।

দ্রষ্টব্য: আমি বিসিএম পিনআউট ব্যবহার করি (বোর্ড নয়), পার্থক্যটি আরও পড়ুন এখানে।

এসএসএইচ এর মাধ্যমে একবার আপনার রাস্পবেরি পাই এর সাথে সংযুক্ত হয়ে গেলে, পাইথন শেল চালানোর জন্য, টার্মিনালে টাইপ করুন:

পাইথন 3

আপনি যদি রাস্পবেরি পাইতে মনিটর এবং কীবোর্ড সংযুক্ত করেন তবে মেনু থেকে কেবল "পাইথন 3 আইডিএল" চালান।

পরবর্তী ধাপ হল বোতামের সাহায্যে রাস্পবেরি পাই কাজ করা। আমরা GPIO 23 এবং 24 পিনের সাথে বিশেষ শ্রোতাদের সংযুক্ত করব, যা সেই পিনগুলিতে "রাইজিং এজ" ইভেন্ট এবং "ফোলিং এজ" ইভেন্ট শুনবে। ইভেন্টের ক্ষেত্রে শ্রোতারা আমরা যে ফাংশনগুলি সংজ্ঞায়িত করেছি তাকে কল করবে। "রাইজিং এজ" এর মানে হল যে বোতামটি টিপে দেওয়া হয়েছিল এবং এখন ছেড়ে দেওয়া হয়েছে (প্রথম বোতাম - দরজা খোলা হয়েছে), "পতনশীল প্রান্ত" এর অর্থ হল যে বোতামটি ছেড়ে দেওয়া হয়েছিল এবং এখন চাপানো হয়েছে (দ্বিতীয় বোতাম - দরজা নির্দিষ্ট বিন্দুতে পৌঁছেছে)। বোতামগুলির কার্যকারিতা সম্পর্কে আরও - এখানে।

প্রথমে, আমদানি লাইব্রেরি যা আমাদের পিনগুলিতে অ্যাক্সেস দেয়:

RPi. GPIO GPIO হিসাবে আমদানি করুন

এখন বিশেষ ফাংশন সংজ্ঞায়িত করুন যা ইভেন্ট ট্রিগার হলে বলা হবে:

ডিএফ সেন্সর 1 (চ্যানেল): মুদ্রণ ("সেন্সর 1 ট্রিগার") ডিফ সেন্সর 2 (চ্যানেল): মুদ্রণ ("সেন্সর 2 ট্রিগার)

পিনআউট টাইপ সেট করুন:

GPIO.setmode (GPIO. BCM)

পিন কনফিগার করুন:

GPIO.setup (23, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (24, GPIO. IN, pull_up_down = GPIO. PUD_UP)

শ্রোতাদের সংযুক্ত করুন:

GPIO.add_event_detect (23, GPIO. RISING, callback = sensor1, bouncetime = 300) GPIO.add_event_detect (24, GPIO. FALLING, callback = sensor2, bouncetime = 300)

এখন আপনি এটি পরীক্ষা করতে পারেন! যদি আপনি 1 বোতামটি চাপেন তবে আপনি টার্মিনাল "সেন্সর 1 ট্রিগার" এ একটি বার্তা দেখতে পাবেন, বোতাম 2 আপনাকে "সেন্সর 2 ট্রিগার" একটি বার্তা দেয়।

দ্রষ্টব্য: যখন আপনি পরীক্ষা শেষ করে নিচের ফাংশনটি কল করতে ভুলবেন না: GPIO.cleanup ()।

আসুন আরও একটি ফাংশন সেট আপ করি যাকে বলা হয় যখন দরজা সেই জায়গায় পৌঁছায় যেখানে আমরা ছবি তুলি! আপনি এটি নিজে করতে পারেন বা আমার বাস্তবায়ন ব্যবহার করতে পারেন যা আমি এখানে সংযুক্ত করেছি (sensor.py)

দ্রষ্টব্য: sensor.py শুধুমাত্র পরীক্ষার উদ্দেশ্যে ব্যবহৃত হয়, সম্পূর্ণ কার্যকারিতা সহ ফাইলগুলি আমি শেষ ধাপে সংযুক্ত করেছি।

ধাপ 3: আইপি ক্যামেরা কনফিগার করুন

আইপি ক্যামেরা কনফিগার করুন
আইপি ক্যামেরা কনফিগার করুন
আইপি ক্যামেরা কনফিগার করুন
আইপি ক্যামেরা কনফিগার করুন
আইপি ক্যামেরা কনফিগার করুন
আইপি ক্যামেরা কনফিগার করুন

ধাপের বিবরণ: এখন আমরা পুরানো স্মার্টফোনটিকে একটি আইপি ক্যামেরা হিসেবে কনফিগার করতে যাচ্ছি।

আইপি ক্যামেরা হিসেবে স্মার্টফোন ব্যবহার করা হয় অ্যাপের মাধ্যমে। অ্যান্ড্রয়েড, আইওএস, উইন্ডোজ ফোনের জন্য বিভিন্ন অ্যাপ আছে যা আপনি ব্যবহার করতে পারেন। আমি অ্যান্ড্রয়েডের জন্য "আইপি ওয়েবক্যাম" নামে একটি বেছে নিয়েছি। এটি একটি বিনামূল্যে অ্যাপ্লিকেশন এবং এটি কনফিগার করা সহজ।

অ্যাপটি চালান, অ্যাপের দেওয়া ফটোগুলির রেজোলিউশন সেট আপ করতে "ভিডিও পছন্দ" এ যান। তারপরে "স্টার্ট সার্ভার" (উপরের প্রথম চিত্র) আলতো চাপুন। স্ক্রিনের নীচে আপনাকে ক্যামের আইপি ঠিকানা দেখতে হবে (উপরের দ্বিতীয় চিত্রটি দেখুন)। ব্রাউজারে আপনি https://cam_ip_address/photo-j.webp

অবশেষে, ক্যামেরাটি ফ্রিজে সংযুক্ত করুন (উপরের শেষ চিত্র)।

ধাপ 4: ফেস এপিআই

ফেস এপিআই
ফেস এপিআই

ধাপের বর্ণনা: এই ধাপে আমরা মাইক্রোসফটের ফেস এপিআই সম্পর্কে কথা বলব যা মুখের স্বীকৃতি দেয় এবং মানুষকে চিহ্নিত করে।

মাইক্রোসফটের ফেস এপিআই হল একটি ফেস রিকগনিশন সার্ভিস, যার মাধ্যমে আমরা ফটো বিশ্লেষণ করতে পারি এবং সেগুলোতে থাকা লোকদের চিহ্নিত করতে পারি।

প্রথমত, আপনার মাইক্রোসফ্ট আজুর অ্যাকাউন্ট প্রয়োজন। আপনার যদি এটি না থাকে তবে আপনি এটি বিনামূল্যে এখানে তৈরি করতে পারেন।

দ্বিতীয়ত, https://portal.azure.com এ যান, বাম পাশে "নতুন" ক্লিক করুন, "জ্ঞানীয় পরিষেবা APIs" ফর্মটি টাইপ করুন, এটি নির্বাচন করুন এবং "তৈরি করুন" ক্লিক করুন। অথবা আপনি এই লিঙ্কটি খুলতে পারেন। এখন আপনাকে আপনার পরিষেবার নাম লিখতে হবে, সাবস্ক্রিপশনের ধরণ নির্বাচন করতে হবে, আপনার প্রয়োজন API এর ধরন (আমাদের ক্ষেত্রে এটি ফেস এপিআই), অবস্থান, মূল্য নির্ধারণের স্তর, রিসোর্স গ্রুপ এবং সম্মত আইনি শর্তাবলী (এই ধাপে স্ক্রিনশট যোগ করা দেখুন)।

তৃতীয়ত, "সমস্ত সম্পদ" ক্লিক করুন, আপনার মুখের API পরিষেবাটি নির্বাচন করুন এবং ব্যবহারের পরিসংখ্যান, শংসাপত্র ইত্যাদি দেখুন।

ফেস এপিআই বিস্তারিত এখানে পাওয়া যাবে, বিভিন্ন প্রোগ্রামিং ভাষায় উদাহরণ দেওয়া হয়েছে। এই প্রকল্পের জন্য আমরা পাইথন ব্যবহার করছি। আপনি ডকুমেন্টেশন পড়তে পারেন এবং আপনার নিজস্ব কার্যকারিতা সেট করতে পারেন অথবা আপনি এখানে প্রদত্ত একটি ব্যবহার করতে পারেন (এটি মাইক্রোসফট দ্বারা প্রদত্ত কার্যকারিতার সম্পূর্ণ সেট নয়, শুধুমাত্র এই প্রকল্পের জন্য প্রয়োজনীয় পয়েন্টগুলি)। আমার পাইথন ফাইলগুলি এই ধাপে সংযুক্ত।

আসুন ফেস এপিআই দিয়ে কাজের কাঠামোর দিকে এগিয়ে যাই। "আইডেন্টিফিকেশন" কার্যকারিতা ব্যবহার করার জন্য আমাদের এমন একটি লাইব্রেরি তৈরি করতে হবে যা ব্যবহার করে ফেস এপিআই পরিষেবা অ্যাপ দ্বারা তোলা ছবিগুলি চিনতে পারবে। এটি সেট আপ করতে, অনুগ্রহ করে পদক্ষেপগুলি অনুসরণ করুন:

  1. একটি দল গঠণ কর
  2. এই গ্রুপে ব্যক্তিদের যুক্ত করুন
  3. এই ব্যক্তিদের মুখ যোগ করুন
  4. ট্রেন গ্রুপ
  5. আপনি যে ব্যক্তিকে সনাক্ত করতে চান তার সাথে ছবি জমা দিন (আপনাকে ফটো এবং গ্রুপ আইডি প্রদান করতে হবে যেখানে পরিষেবা প্রার্থীদের সন্ধান করবে)
  6. ফলাফল: জবাবে আপনি প্রার্থীদের একটি তালিকা পাবেন যারা আপনার জমা দেওয়া ছবিতে থাকতে পারেন।

আমি নির্দিষ্ট কার্যকারিতা সহ তিনটি ফাইল তৈরি করেছি যা গ্রুপ, একক ব্যক্তি এবং একক ফটোগুলির সাথে কাজ করার অনুমতি দেয়:

  • PersonGroup.py - এমন বৈশিষ্ট্য রয়েছে যা অনুমতি দেয়: গ্রুপ তৈরি করুন, গ্রুপ সম্পর্কে তথ্য পান, আপনার সমস্ত গ্রুপের তালিকা পান, ট্রেন গ্রুপ এবং প্রশিক্ষণের অবস্থা পান
  • Person.py - এমন বৈশিষ্ট্য রয়েছে যা অনুমতি দেয়: ব্যক্তি তৈরি করুন, ব্যক্তির তথ্য পান, নির্দিষ্ট গোষ্ঠীর সকল ব্যক্তির তালিকা করুন, নির্দিষ্ট ব্যক্তির মুখ যুক্ত করুন
  • Face.py - এমন বৈশিষ্ট্য রয়েছে যা অনুমতি দেয়: ছবিতে মুখ সনাক্ত করা, ব্যক্তিকে চিহ্নিত করা, চিহ্নিত ব্যক্তির নাম পাওয়া

"Recognition.py" নামক ফাইলে আমি এমন বৈশিষ্ট্যগুলি প্রদান করি যা আপনাকে ছবিতে একটি মুখ আছে কিনা তা যাচাই করার অনুমতি দেয় এবং নির্দিষ্ট ব্যক্তির মুখ যোগ করে (নির্দিষ্ট ফোল্ডার থেকে স্বয়ংক্রিয়ভাবে অনেক ছবি থেকে মুখ যুক্ত করে)।

এই ধাপে সংযুক্ত ফাইলটি ডাউনলোড করুন, এটি আনপ্যাক করুন, এই তিনটি ফাইলে 'কী' গ্লোবাল ভেরিয়েবল পরিবর্তন করুন: PersonGroup.py, Person.py এবং Face.py আপনার নিজের কী যা আপনি খুঁজে পেতে পারেন: portal.azure.com> সমস্ত সম্পদ > ফেস এপিআই সার্ভিস (অথবা আপনি কিভাবে এটিকে ডেকেছেন)> কী ট্যাব। আপনি দুটি কী ব্যবহার করতে পারেন।

দ্রষ্টব্য: এখানে আমরা মানুষকে চেনার জন্য ফেস এপিআই পরিষেবাটি প্রশিক্ষণ দিতে যাচ্ছি, তাই যে কোনও কম্পিউটার থেকে নিম্নলিখিত ক্রিয়াগুলি করা যেতে পারে (এর জন্য রাস্পবেরি পাই প্রয়োজন হয় না) - মাইক্রোসফ্টের সার্ভারে পরিবর্তনগুলি সংরক্ষণ করা হয়।

KEY পরিবর্তন করার পরে, স্বীকৃতি.পি চালান এবং পাইথন শেলের মধ্যে নিম্নলিখিত কমান্ডটি প্রবেশ করান:

PersonGroup.create ("পরিবার", 'fff-fff')) // আপনি আপনার নিজের নাম এবং আইডি ব্যবহার করতে পারেন

গ্রুপ printResJson (PersonGroup.getPersonGroup ('fff-fff'))

আপনার সদ্য তৈরি করা গোষ্ঠীর তথ্য দেখতে হবে। এখন প্রবেশ করুন:

printResJson (Person.createPerson ('fff-fff', 'ব্যক্তির নাম'))

এখন আপনি ব্যক্তি আইডি পান। এই ব্যক্তির ছবি সহ ফোল্ডার তৈরি করুন যাতে সমস্ত ছবিতে এই ব্যক্তির মুখ থাকে। আপনি ফাংশন detectFaceOnImages রিকগনিশন.পি ব্যবহার করতে পারেন যা আপনাকে দেখায় যে কোন ফটোতে মুখ সনাক্ত করা হয়েছে। এখন, কমান্ড চালান:

যোগ করুন

তারপরে আমাদের নিম্নলিখিতটি প্রবেশ করে আমাদের পরিষেবাটি প্রশিক্ষণ দিতে হবে:

PersonGroup.trainPersonGroup ('fff-fff') printResJson (PersonGroup.getPersonGroupTrainingStatus ('fff-fff'))

এখন আমাদের গ্রুপ প্রশিক্ষিত এবং একজন ব্যক্তিকে চিহ্নিত করার জন্য প্রস্তুত।

ছবিতে ব্যক্তির চেক করতে আপনি করতে পারেন:

Face.checkPerson (ছবি, 'fff-fff')

প্রতিক্রিয়ায় আপনি ফটোতে থাকা প্রার্থীদের তালিকা এবং সম্ভাবনার তালিকা পাবেন।

দ্রষ্টব্য: প্রতিবার যখন আপনি একটি গ্রুপে একজন ব্যক্তি বা ব্যক্তির মুখ যোগ করেন তখন আপনাকে গ্রুপটিকে প্রশিক্ষণ দিতে হবে!

ধাপ 5: নোড-লাল কনফিগারেশন

নোড-লাল কনফিগারেশন
নোড-লাল কনফিগারেশন

ধাপের বিবরণ: এই ধাপে, আমরা নোড-রেড ফ্লো তৈরি করব যা আপনাকে আপনার রেফ্রিজারেটরে অ্যাক্সেস লঙ্ঘন সম্পর্কে অবহিত করবে =)

যদি আপনার রাস্পবেরি পাই রাস্পবিয়ান জেসি নভেম্বর 2015 বা পরবর্তী সংস্করণে চলে তবে আপনাকে নোড-রেড ইনস্টল করার দরকার নেই, কারণ এটি ইতিমধ্যেই ইনস্টল করা আছে। আপনাকে কেবল এটি আপডেট করতে হবে। দয়া করে এখানে ম্যানুয়াল ব্যবহার করুন।

এখন, আমাদের নোড-রেডে টুইলিও নোড ইনস্টল করতে হবে, যাতে আমরা একটি পাঠ্য বার্তা ট্রিগার করতে পারি। টার্মিনাল খুলুন এবং টাইপ করুন:

cd ~/.node-rednpm node-red-node-twilio ইনস্টল করুন

টুইলিও নোড সম্পর্কে আরও এখানে। এর পরে, টার্মিনালে টাইপ করে নোড-রেড চালান:

নোড-লাল

তারপরে যান: https://127.0.0.1:1880/ - যদি আপনি আপনার রাস্পবেরি Pihttps:// {raspberry_pi_ip}: 1880/ - এ ব্রাউজার খুলতে চান, যদি আপনি অন্য কম্পিউটার থেকে নোড -রেড এডিটর খুলতে চান

রাস্পবেরি পাই এর আইপি ঠিকানা জানতে এই নির্দেশটি ব্যবহার করুন।

এখন আপনাকে আপনার নোড-রেড এডিটরের নোডের তালিকায় টুইলিও নোড খুঁজে বের করতে হবে (সাধারণত এটি 'সামাজিক' গ্রুপের পরে দেখা যায়)।

এটি প্রবাহ তৈরি করার সময়!

দ্রষ্টব্য: আপনি এই ধাপে সংযুক্ত আমার প্রবাহ ব্যবহার করতে পারেন, কিন্তু নোডগুলি কনফিগার করতে ভুলবেন না: ইমেল, টুইটার এবং টুইলিও। পরে সে সম্পর্কে পড়ুন।

আমাদের প্রবাহ "নোটিফাই" নোড দিয়ে শুরু হয় যা অ্যাক্সেস লঙ্ঘন সম্পর্কে কিছু ডেটা সহ আমাদের মূল প্রোগ্রাম থেকে পোস্ট অনুরোধ গ্রহণ করে (ডেটাগুলির উদাহরণ মন্তব্য নোডে "বস্তু গ্রহণ সম্পর্কে" পাওয়া যাবে)। এই নোডটি তাত্ক্ষণিকভাবে "ওকে" বার্তার সাথে সাড়া দেয়, তাই প্রধান প্রোগ্রামটি জানতে পারে যে তথ্যটি প্রাপ্ত হয়েছিল (ফ্লো: < /বিজ্ঞপ্তি> ওকে> প্রতিক্রিয়া সহ প্রতিক্রিয়া)। নাম দিয়ে সবুজ নোড।

মুষ্টি নোড (/বিজ্ঞপ্তি) ডেটা থেকে "ডেটা টপিক" এবং "ইমেজ টপিক" এ প্রচার করা হয় যেখানে যথাক্রমে "ডেটা" এবং "ইমেজ" যোগ করা হয়।

"কম্পাইল" নোডে আমরা "ডেটা" টপিকের সাথে ডেটা (যা আমরা প্রথম ধাপে পাই) এবং "ইমেজ" টপিকের সাথে একটি ইমেজ পাই (ছবিটি /home/pi/image-j.webp

পরবর্তী ধাপ হল আমাদের অ্যাক্সেস তালিকা থেকে ব্যক্তি বা এটি অপরিচিত (চেককন্ডিশন নোড) কিনা তা পরীক্ষা করা। আমরা যে ডেটা পাই তার মধ্যে একটি "বিশ্বস্ত ব্যক্তি" ক্ষেত্র আছে: "সত্য" এর মানে হল যে আমরা এই ব্যক্তিকে জানি, কিন্তু সে/সে প্রবেশাধিকার লঙ্ঘন করেছে, "মিথ্যা" এর অর্থ হল যে ব্যক্তিটি একজন অপরিচিত।

যখন ফলাফল "সত্য" হয় তখন আমরা টুইটার, টুইলিও এবং ইমেইলে বিজ্ঞপ্তি পাঠাই; যখন ফলাফল "মিথ্যা" হয় - শুধুমাত্র ইমেল এবং টুইলিও। আমরা একটি বার্তা সহ ইমেইলের জন্য একটি বস্তু, সংযুক্ত ছবি এবং ইমেইল বিষয়, একটি বার্তা সহ টুইলিওর জন্য একটি বস্তু তৈরি করি। টুইটারের জন্য আমরা একটি বস্তুর ডেটা যোগ করি যদি "বিশ্বস্ত ব্যক্তি" সত্য হয়। তারপর এই তিনটি বস্তুকে তিনটি ভিন্ন নোডে পাঠান।

দ্রষ্টব্য: যদি নিম্নলিখিত নোডটি একটি বার্তা না পায় তবে আমরা এটিতে "নাল" পাঠাই।

বিজ্ঞপ্তির জন্য নোডগুলি কনফিগার করার সময় এসেছে!

টুইটার প্রবাহে "টুইটার" নোড যুক্ত করুন। ডাবল ক্লিক করে ওপেন করুন। "টুইটার আইডি" এর পাশে পেন্সিলে ক্লিক করুন। তারপরে "টুইটারের সাথে প্রমাণীকরণের জন্য এখানে ক্লিক করুন" এ ক্লিক করুন। আপনার টুইটার অ্যাকাউন্টে প্রবেশ করুন এবং নোড-রেড প্রয়োজনীয় অনুমতি দিন।

ইমেল প্রবাহে "ইমেল" নোড যুক্ত করুন। আপনি যদি জিমেইল ব্যবহার না করেন তাহলে আপনাকে নিম্নলিখিত ক্ষেত্রে ডেটা পরিবর্তন করতে হবে - "সার্ভার" এবং "পোর্ট" (আপনি কোন সার্ভার এবং পোর্টটি আপনার ইমেল এজেন্টের হেল্প পেজে ব্যবহার করতে পারেন তা খুঁজে পেতে পারেন) অন্যথায় এগুলি পরিবর্তন করবেন না ক্ষেত্র

  • থেকে> ইমেল ঠিকানা যা বার্তা পাঠানো হবে
  • ইউজারিড> আপনার ইমেল থেকে লগইন করুন (সম্ভবত "টু" ক্ষেত্রের মতো)
  • পাসওয়ার্ড> আপনার ইমেইল অ্যাকাউন্ট থেকে পাসওয়ার্ড
  • নাম> এই নোডের জন্য নাম

টুইলিও https://www.twilio.com/try-twilio এ যান এবং একটি অ্যাকাউন্ট নিবন্ধন করুন। যাচাই করুন। Https://www.twilio.com/console- এ যান। "ফোন নম্বর" (বড় # আইকন) -এ ক্লিক করুন এবং ফ্রি নম্বর তৈরি করুন। আপনি যদি মার্কিন যুক্তরাষ্ট্রের বাইরে থাকেন তাহলে আপনাকে জিও অনুমতি যোগ করতে হবে, https://www.twilio.com/console/sms/settings/geo-pe… এ যান এবং আপনার দেশ যুক্ত করুন।

এখন, নোড-রেড এডিটরে যান, টুইলিও নোড যুক্ত করুন, কনফিগার করতে এবং সমস্ত ক্ষেত্র পূরণ করতে এটিতে ডাবল ক্লিক করুন:

  • শংসাপত্র> স্থানীয় প্রমাণপত্রাদি ব্যবহার করুন
  • টুইলিও> সম্পাদনা

    • অ্যাকাউন্ট SID> এখান থেকে নিন
    • থেকে> আপনার তৈরি করা ভার্চুয়াল নম্বর টাইপ করুন
    • টোকেন> এখান থেকে নিন
    • নাম> টুইলিও
  • আউটপুট> এসএমএস
  • > আপনার ফোন নম্বর
  • নাম> এই নোডের জন্য নাম।

স্থাপনায় ক্লিক করুন

এখন আপনার প্রবাহ প্রস্তুত! আপনি নির্দিষ্ট বস্তুর সাথে POST অনুরোধ পাঠিয়ে এটি পরীক্ষা করতে পারেন!

ধাপ 6: সম্পূর্ণ প্রকল্প সংকলন

সম্পূর্ণ প্রকল্প সংকলন
সম্পূর্ণ প্রকল্প সংকলন
সম্পূর্ণ প্রকল্প সংকলন
সম্পূর্ণ প্রকল্প সংকলন

ধাপের বিবরণ: এই ধাপে আমরা সব অংশ একসাথে রাখব এবং সেগুলিকে একটি পৃথক সিস্টেম হিসাবে কাজ করব।

এই ধাপে আপনাকে করতে হবে:

  1. আইপি ক্যামেরা হিসাবে পুরানো স্মার্টফোন কনফিগার করুন
  2. কাজের সেন্সর আছে
  3. প্রশিক্ষিত মাইক্রোসফটের ফেস এপিআই
  4. কনফিগার করা নোড-রেড ফ্লো

এখন আমাদের ধাপ 2 -এ লেখা কোডটি উন্নত করতে হবে। বিশেষ করে ফাংশন প্রসেস () বলা হয় যখন ব্যক্তি দরজা খুলে দেয়। এই ফাংশনে আমরা নিম্নলিখিতগুলি করব:

  1. আইপি ক্যামেরা থেকে ছবি পান এবং "image.jpg" নামের সাথে এটিকে "/home/pi/" এ সংরক্ষণ করুন
  2. সেই ছবিতে ব্যক্তির নাম পান (ফাইলে "চেকপারসন" ফাইলে "স্বীকৃতি")
  3. সেই ব্যক্তির জন্য অ্যাক্সেস অনুমতি চেক করুন (ফাইলে "অ্যাক্সেস" এ "চেক" ফাংশন)
  4. "চেক" ফাংশন কম্পোজ বার্তার ফলাফলের উপর ভিত্তি করে
  5. নোড-রেডে কম্পোজড মেসেজ পাঠান (ফাংশন “toNodeRed” ফাইলে “sendData”)

দ্রষ্টব্য: উল্লিখিত ফাংশনগুলির সম্পূর্ণ কোড দেখতে দয়া করে এই ধাপে সংযুক্ত জিপ ফাইলটি ডাউনলোড করুন।

ফাংশন সম্পর্কে "fromIpCam"। এই ফাংশনটি আপনার আইপি ক্যামেরার কাছে GET অনুরোধ করে, প্রতিক্রিয়াতে ফোকাসড ইমেজ পান এবং আপনার দ্বারা নির্ধারিত পথে এটি সংরক্ষণ করুন। এই ফাংশনে আপনাকে ক্যামেরা আইপি ঠিকানা দিতে হবে।

ফাংশন "checkPerson" সম্পর্কে। ফাংশনটি চিত্র এবং গোষ্ঠীর পথ পায় যেখানে আপনি প্যারামিটার হিসাবে ফটো থেকে ব্যক্তিকে খুঁজতে চান। প্রথমত, এটি প্রদত্ত ছবিতে একটি মুখ সনাক্ত করে (ফাইল Face.py, ফাংশন "সনাক্ত করুন")। প্রতিক্রিয়ায় এটি আইডি পায় যদি মুখ সনাক্ত করা হয়। তারপরে এটি "আইডেন্টিফাই" ফাংশন (Face.py ফাইল) কল করে যা নির্দিষ্ট গ্রুপে অনুরূপ ব্যক্তিদের খুঁজে পায়। প্রতিক্রিয়ায় এটি একটি ব্যক্তি আইডি পায় যদি ব্যক্তি পাওয়া যায়। তারপর প্যারামিটার হিসাবে ব্যক্তির আইডি সহ ফাংশন "ব্যক্তি" (ফাইল Person.py) কে কল করুন, "ব্যক্তি" ফাংশন নির্দিষ্ট আইডি দিয়ে ব্যক্তিকে ফেরত দেয়, আমরা ব্যক্তির নাম পাই এবং এটি ফেরত দেই।

ফাংশন "চেক" সম্পর্কে। এই ফাংশনটি ফাইল "অ্যাক্সেস" এ স্থাপন করা হয়েছে যেখানে গ্লোবাল ভেরিয়েবল হিসাবে "অ্যাক্সেস লিস্ট" রাখে (আপনি চাইলে এটি পরিবর্তন করতে পারেন)। পূর্ববর্তী ফাংশন থেকে ব্যক্তির নাম পাওয়া, ফাংশন "চেক" এই ব্যক্তিকে অ্যাক্সেস তালিকার সাথে তুলনা করুন এবং ফলাফলটি ফেরত দিন।

দ্রষ্টব্য: সম্পূর্ণ প্রকল্প পরবর্তী ধাপের সাথে সংযুক্ত।

ধাপ 7: উপসংহার

এই ধাপে আমি সম্পূর্ণ প্রকল্পটি সংযুক্ত করেছি যা আপনার আনসিপ এবং আপনার রাস্পবেরি পাইতে স্থাপন করা উচিত।

এই প্রকল্পের কাজটি "main.py" ফাইল চালানোর জন্য।

যদি আপনি SSH এর মাধ্যমে রাস্পবেরি পাই নিয়ন্ত্রণ করেন তবে আপনাকে একটি শেল থেকে দুটি প্রোগ্রাম চালাতে হবে: পাইথন প্রোগ্রাম এবং নোড-রেড। নিম্নলিখিত টার্মিনালে টাইপ করুন:

নোড-লাল

প্রেস "Ctrl + Z" এবং টাইপ করুন:

চাকরি

আপনি নোড-রেড প্রক্রিয়া দেখেছেন। প্রক্রিয়াটির আইডি দেখুন এবং টাইপ করুন:

বিজি

এখন নোড-রেডকে ব্যাকগ্রাউন্ডে কাজ শুরু করতে হবে। তারপরে আপনার প্রকল্পের সাথে ডিরেক্টরিতে যান এবং প্রধান প্রোগ্রামটি চালান:

python3 main.py

দ্রষ্টব্য: পাইথন ফাইল (ধাপ 4) এবং নোড-রেড ফ্লোতে শংসাপত্র (ধাপ 5) এ কী পরিবর্তন করতে ভুলবেন না

সম্পন্ন! আপনার ফ্রিজ নিরাপদ!

আমি আশা করি আপনি এই অদ্ভুত উপভোগ করেছেন! কমেন্টে নির্দ্বিধায় আপনার মন ছেড়ে দিন।

আপনি আমার প্রকল্পের জন্য ভোট দিলে আমি প্রশংসা করব =)

ধন্যবাদ!

প্রস্তাবিত: