একটি মাত্র স্বয়ংক্রিয় যান (autonomous vehicle) প্রতি মিনিটে শত শত মেগাবাইট পয়েন্ট ক্লাউড (point cloud) ডেটা তৈরি করতে পারে। লিডার (Lidar) সেন্সরগুলো লক্ষ লক্ষ লেজার পালস বাইরের দিকে নিক্ষেপ করে এবং প্রতিটি ফিরে আসা পিং (ping) একটি সুনির্দিষ্ট স্থানিক স্থানাঙ্ক (spatial coordinate) হয়ে ওঠে। এর ফলে বিশ্বের একটি ঘন, ত্রিমাত্রিক (three-dimensional) স্ন্যাপশট তৈরি হয়। এটি তার নির্ভুলতার জন্য সুন্দর, কিন্তু আকারের দিক থেকে অত্যন্ত বিশাল।

র (Raw) পয়েন্ট ক্লাউডগুলো প্রথাগত কোডেক (codecs) দিয়ে ভালোভাবে সংকুচিত (compress) করা যায় না। ইমেজ বা ছবির মতো নয়, যেখানে JPEG ভিজ্যুয়াল প্যাটার্ন ব্যবহার করতে পারে, অথবা ভিডিওর মতো নয়, যেখানে H.264 ফ্রেমের মধ্যে মোশন ট্র্যাক করতে পারে; একটি পয়েন্ট ক্লাউড হলো x, y, এবং z মানের একটি অগোছালো বিন্যাস। এখানে কোনো প্রাকৃতিক গ্রিড নেই, কোনো অতিরিক্ত পিক্সেল নেই এবং কোনো সহজ শর্টকাটও নেই। ফাইলগুলোর আকার বেড়ে যায়। আর্কাইভগুলো ব্যয়বহুল হয়ে পড়ে। নেটওয়ার্ক জ্যাম হয়ে যায়। যে শিল্পগুলোর এই ডেটা দ্রুত স্থানান্তর বা সস্তায় সংরক্ষণ করা প্রয়োজন, তাদের জন্য এটি একটি বাস্তব বোঝা।

Deep AutoEncoder Geometry Compression-এর ওপর সাম্প্রতিক কাজ একটি ভিন্ন পথ দেখায়। পয়েন্ট ক্লাউডগুলোকে জিপ (zip) করার মতো স্থির ফাইল হিসেবে না দেখে, এই পদ্ধতি সেগুলোকে শিখতে সক্ষম এমন কাঠামো (learnable structures) হিসেবে নতুনভাবে বিবেচনা করে। এটি জটিল আকৃতির ভেতরে লুকিয়ে থাকা সংক্ষিপ্ততা (compactness) খুঁজে পেতে ডিপ লার্নিং ব্যবহার করে।

র (Raw) জ্যামিতির ভার

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

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

এখানেই নিউরাল কম্প্রেশন (neural compression) কাজ শুরু করে। পয়েন্ট ক্লাউডকে কেবল র (raw) বিট হিসেবে না দেখে, একটি ডিপ মডেল শেখে যে জ্যামিতি আসলে কী প্রকাশ করে।

কীভাবে Deep AutoEncoders পয়েন্ট ক্লাউড সংকুচিত করে

এর আর্কিটেকচার বা স্থাপত্য ধারণা অনুযায়ী সহজ, আর এই সহজতাই এর শক্তি। একটি Deep AutoEncoder-এর দুটি অংশ থাকে। প্রথম অংশটি হলো এনকোডার (encoder), যা সম্পূর্ণ পয়েন্ট ক্লাউড গ্রহণ করে এবং সেটিকে নির্যাস আকারে ছোট করে ফেলে। এটি কেবল এলোমেলোভাবে পয়েন্টগুলো সরিয়ে দেয় না। পরিবর্তে, এটি মূল জ্যামিতিক সারমর্ম (core geometric essence) বের করতে শেখে। এই ধাপের আউটপুট হলো একটি ল্যাটেন্ট রিপ্রেজেন্টেশন (latent representation): একটি সংক্ষিপ্ত ভেক্টর বা প্যারামিটারের একটি ছোট সেট যা কোনোভাবে মূল বস্তুর আকৃতি, রেখাচিত্র (contours) এবং স্থানিক সম্পর্কগুলোকে ধারণ করে।

এটিকে একজন ভাস্করের মতো ভাবুন যিনি একটি ভবন পর্যবেক্ষণ করছেন এবং তারপর এক সেট নির্দেশাবলী লিখে রাখছেন। নির্দেশাবলীগুলো খুবই ক্ষুদ্র, কিন্তু সঠিক হাতে সেগুলো ব্যবহার করলে পুনরায় প্রায় একই রকম কিছু তৈরি করা সম্ভব।

দ্বিতীয় অংশটি হলো ডিকোডার (decoder)। এটি সেই সংকুচিত ল্যাটেন্ট রিপ্রেজেন্টেশন গ্রহণ করে এবং বিন্দুগুলোকে পুনর্গঠন (reconstruct) করে। পুনর্গঠিত ক্লাউডটি মূলটির হুবহু এক হবে না। কিছু সূক্ষ্ম টেক্সচার বা গঠন নরম হয়ে যাবে। ছোটখাটো আউটলায়ারগুলো (outliers) অদৃশ্য হয়ে যাবে। এটি হলো লসি কম্প্রেশন (lossy compression), এবং এটি এই সত্যের জন্য কোনো ক্ষমা চায় না। লক্ষ্য নিখুঁত নির্ভুলতা (perfect fidelity) অর্জন করা নয়। লক্ষ্য হলো সেই আকৃতি এবং কাঠামো বজায় রাখা যা একটি ডাউনস্ট্রিম অ্যালগরিদমের আসলে প্রয়োজন, আর সেন্সরগুলো অনিবার্যভাবে যে নয়েজ (noise) এবং অতিরিক্ত তথ্য (redundancy) সংগ্রহ করে তা বাদ দেওয়া।

যা এটিকে কার্যকর করে তা হলো ট্রেনিং প্রসেস। অটোএনকোডারকে হাজার হাজার আকৃতি দেখানো হয় যতক্ষণ না এটি শিখতে পারে কোন বৈশিষ্ট্যগুলো অপরিহার্য এবং কোনগুলো আনুমানিকভাবে প্রকাশ করা সম্ভব। সময়ের সাথে সাথে, এটি জ্যামিতির একটি অন্তর্নিহিত শব্দভাণ্ডার তৈরি করে। কার্ভ (curves), সমতল (planes), কোণ (corners) এবং প্রতিসাম্য (symmetries)—সবকিছুই এটি আয়ত্ত করে নেয়। যখন এটি একটি নতুন পয়েন্ট ক্লাউড দেখে, এটি অন্ধভাবে তা সংকুচিত করে না। এটি বুদ্ধিমত্তার সাথে তা সংকুচিত করে।

কী সংরক্ষিত থাকে এবং কী হারিয়ে যায়

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

কিন্তু অনেক কাজের ক্ষেত্রে, এই ট্রেড-অফটি সুবিধাজনক। মানুষের চোখ পয়েন্ট ক্লাউড পড়ে না; অ্যালগরিদম পড়ে। একটি রোবটের পাথ প্ল্যানারের জন্য কেবল দেয়ালগুলো কোথায় তা জানা প্রয়োজন। একটি গাড়ির অবজেক্ট ডিটেক্টরের জন্য কেবল একজন সাইকেল আরোহী বা পার্ক করা ট্রাকের বাউন্ডিং জিওমেট্রি প্রয়োজন। এই ক্ষেত্রগুলোতে, প্রতিটি বিচ্ছুরিত প্রতিফলিত ফোটন সংরক্ষণ করার চেয়ে ম্যাক্রো-লেভেল আকৃতি অক্ষত রাখা অনেক বেশি গুরুত্বপূর্ণ। Deep AutoEncoder পদ্ধতিগুলো বিশেষভাবে এই ধরণের কাঠামোগত সংরক্ষণের জন্য অপ্টিমাইজ করা হয়। তারা কাঁচা পয়েন্ট সংখ্যা বাদ দিলেও বস্তুর বৈশিষ্ট্য নির্ধারণকারী জিওমেট্রি রক্ষা করতে শেখে।

স্টোরেজ এবং ব্যান্ডউইথের সাশ্রয় নাটকীয় হতে পারে। লক্ষ লক্ষ স্থানাঙ্ক পাঠানোর পরিবর্তে, একটি সিস্টেম একটি কম্প্যাক্ট ল্যাটেন্ট কোড পাঠাতে পারে এবং রিসিভারকে স্থানীয়ভাবে দৃশ্যটি পুনর্গঠন করতে দিতে পারে। এই পরিবর্তনটি যেকোনো ডিস্ট্রিবিউটেড 3D অ্যাপ্লিকেশনের হিসাব বদলে দেয়।

কেন রোবোটিক্স এবং স্বায়ত্তশাসিত ড্রাইভিং এটি নিয়ে গুরুত্ব দেয়

যে শিল্পগুলো এই প্রযুক্তির জন্য সবচেয়ে বেশি চেষ্টা করছে, সেগুলো হলো সেন্সর ডেটার সাগরে ডুবে থাকা শিল্পগুলো। স্বায়ত্তশাসিত যানবাহনগুলো তাদের চারপাশের রিয়েল-টাইম ম্যাপ তৈরির জন্য lidar-এর ওপর নির্ভর করে। এই ম্যাপগুলো ক্রমাগত আপডেট হয় এবং কিছু সিস্টেমে এগুলো যানবাহন নেটওয়ার্কের মধ্যে শেয়ার করা হয় বা ফ্লিট-ওয়াইড লার্নিংয়ের জন্য ক্লাউডে আপলোড করা হয়। এই পরিমাণ বিশাল কাঁচা ডেটা ক্রমাগত স্থানান্তর করা একটি অবকাঠামোগত দুঃস্বপ্ন। কম্প্রেসড ল্যাটেন্ট রিপ্রেজেন্টেশন Over-the-Air আপডেট এবং কোলাবোরেটিভ পারসেপশনকে অনেক বেশি ব্যবহারিক করে তোলে।

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

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

ভবিষ্যতের দিকে দৃষ্টিপাত

এই গবেষণাটি একটি দরকারী সংযোগস্থলে অবস্থান করছে। এটি