§

ছবি ড্রপ করুন বা বেছে নিতে ক্লিক করুন

ছবি ড্রপ করুন বা বেছে নিতে ক্লিক করুন

JPEG, TIFF — HEIC আপনার ব্রাউজারের উপর নির্ভর করে। প্রতি ফাইলে সর্বোচ্চ ৩০ MB।

বাংলাদেশ ও পশ্চিমবঙ্গের সাংবাদিক, অ্যাক্টিভিস্ট ও ডকুমেন্টারি ফটোগ্রাফাররা শেয়ার করার আগে ছবি থেকে EXIF স্ট্রিপ করেন — কারণ GPS ট্যাগ সূত্রের ঠিকানা বা প্রতিবাদের স্থান প্রকাশ করতে পারে। নিরাপত্তা সচেতন ব্যবহারকারীরা যেকোনো ফটোগ্রাফিক প্রমাণ ইমেইল করার আগে মেটাডেটা স্ট্রিপ করেন যাতে ফাইলটি অনিচ্ছাকৃতভাবে ছবি কোথায় তোলা হয়েছিল তা প্রকাশ না করে। এই ধাপটি ব্রাউজার ট্যাবে চালালে মূল ফটো কোনো রিমোট সার্ভারে পৌঁছায় না।

EXIF স্ট্রিপিং কীভাবে কাজ করে

একটি JPEG ফাইল হলো APP মার্কার নামক ট্যাগযুক্ত সেগমেন্টের ক্রম, দুই-বাইট SOI স্বাক্ষর (0xFFD8) এর ঠিক পরে শুরু হয়। EXIF ডেটা APP1-এ থাকে, GPS একই APP1 ব্লকে সাব-IFD হিসেবে, এবং IPTC APP13-এ। স্ট্রিপার প্রতিটি মার্কার স্ক্যান করে, মেটাডেটা বহনকারীগুলো চিহ্নিত করে, সেগুলো সরায়, এবং অবশিষ্ট পেলোড একটি বৈধ JPEG-এ পুনর্সংযোজন করে।

  1. APP মার্কার পার্স করুন. টুলটি কাঁচা ArrayBuffer পড়ে এবং JFIF মার্কার ক্রম বাইট-বাই-বাইট স্ক্যান করে। প্রতিটি দুই-বাইট মার্কার ট্যাগ একটি সেগমেন্ট ধরন শনাক্ত করে: APP0 (JFIF হেডার), APP1 (EXIF ও XMP), APP13 (Photoshop ও IPTC), ইত্যাদি। পার্সার কিছু স্পর্শ করার আগে প্রতিটি সেগমেন্টের অফসেট ও বাইট দৈর্ঘ্য একটি ছোট টেবিলে রেকর্ড করে।
  2. EXIF ট্যাগ ডিকোড করুন. APP1 পেলোড চারটি Image File Directory সহ একটি মিনি TIFF কাঠামো: 0th IFD (প্রধান ছবির বৈশিষ্ট্য), Exif SubIFD (এক্সপোজার, লেন্স, ফোকাল লেংথ, ISO), GPS IFD (অক্ষাংশ, দ্রাঘিমাংশ, উচ্চতা, দিকনির্দেশনা), এবং 1st IFD (এমবেডেড থাম্বনেইল)। প্রতিটি ট্যাগে একটি সংখ্যাসূচক কোড, একটি ডেটা টাইপ ও একটি মান থাকে।
  3. GPS ট্যাগ চিহ্নিত করুন. GPS IFD-এর যেকোনো ট্যাগ একটি লাল গোপনীয়তা ব্যাজ দিয়ে হাইলাইট করা হয়। অক্ষাংশ ও দ্রাঘিমাংশ তিনটি র‍্যাশনাল সংখ্যা (ডিগ্রি, মিনিট, সেকেন্ড) এবং একটি রেফারেন্স দিক (N বা S, E বা W) হিসেবে সংরক্ষিত। টুলটি সেগুলো ছয় ডিজিটের নির্ভুলতায় সাইন করা দশমিক ডিগ্রিতে রূপান্তর করে।
  4. মেটাডেটা স্ট্রিপ করুন. JPEG ফাইলের জন্য ডিফল্ট পাথ piexifjs ব্যবহার করে APP1 সেগমেন্ট সম্পূর্ণ সরিয়ে দেয়, পিক্সেল ডেটা অপরিবর্তিত রেখে একটি নতুন dataURL ফেরত দেয়। "অভিমুখ রাখুন" চালু থাকলে, টুলটি স্ট্রিপ করার আগে মূল Orientation ট্যাগ মান (১–৮) অনুযায়ী <canvas>-এ ছবিটি ঘোরায়।
  5. ক্যানভাস পুনরায়-এনকোড পাথ. "ICC কালার প্রোফাইল রাখুন" বন্ধ থাকলে, টুলটি একটি লুকানো <canvas>-এ ছবি আঁকে এবং canvas.toBlob('image/jpeg', quality) কল করে। এই পাথ সবকিছু স্ট্রিপ করে (EXIF, XMP, IPTC, ICC প্রোফাইল, থাম্বনেইল) এবং JPEG মান স্লাইডার ৬০ থেকে ১০০-এর মধ্যে নিয়ন্ত্রণ করতে দেয়। ডিফল্ট ৯২।
  6. পরিষ্কার ফাইল ডাউনলোড করুন. পরিষ্কার করা ব্লব <original-name>-stripped.jpg নামে ডাউনলোড হিসেবে দেওয়া হয়। টুলটি ডাউনলোড লিঙ্ক দেখানোর আগে ফলাফল পুনরায় পার্স করে নিশ্চিত করে EXIF GPS বিভাগ খালি, তাই "stripped" লেবেলযুক্ত ফাইল এখনও লোকেশন ট্যাগ বহন করে না।

শেয়ার করার আগে EXIF কেন স্ট্রিপ করবেন

  • অবস্থানের গোপনীয়তা. স্মার্টফোন ডিফল্টে প্রতিটি ফটোতে সঠিক GPS স্থানাঙ্ক এমবেড করে। রেস্তোরাঁ, অফিস বা বাড়ি থেকে তোলা JPEG তার মেটাডেটায় প্রায় পাঁচ মিটার নির্ভুলতায় সেই ঠিকানা বহন করে। সোশ্যাল মিডিয়ায় পোস্ট করার আগে, অপরিচিতকে ইমেইল করার আগে বা পাবলিক সাপোর্ট টিকেটে সংযুক্ত করার আগে GPS ট্যাগ স্ট্রিপ করলে সেই লোকেশন ফিঙ্গারপ্রিন্ট সম্পূর্ণ মুছে যায়।
  • প্রকাশনায় পরিচয় গোপন. সাংবাদিক, অ্যাক্টিভিস্ট ও হুইসেলব্লোয়াররা ফটো জমা দেওয়ার আগে EXIF স্ট্রিপ করেন কারণ ক্যামেরার সিরিয়াল নম্বর, লেন্স ফার্মওয়্যার সংস্করণ ও নির্মাণ টাইমস্ট্যাম্প অন্যান্য প্রকাশিত ছবির সাথে ক্রস-রেফারেন্স করে ফটোগ্রাফার শনাক্ত করা যায়।
  • ছোট ফাইল আকার. একটি সাধারণ স্মার্টফোন JPEG তার APP1 সেগমেন্টে ৫ থেকে ১৫ KB মেটাডেটা বহন করে, ১৬০ × ১২০ এমবেডেড থাম্বনেইল সহ। ১,০০০ পণ্য ছবির ব্যাচে স্ট্রিপ করলে প্রতি আপলোড রাউন্ড-ট্রিপে ৫ থেকে ১৫ MB বাঁচে।
  • ক্যামেরা ফিঙ্গারপ্রিন্ট সরান. ক্যামেরার মেক, মডেল, ফার্মওয়্যার সংস্করণ, লেন্স আইডেন্টিফায়ার ও শাটার-অ্যাকচুয়েশন কাউন্ট একটি ফিঙ্গারপ্রিন্ট তৈরি করে যা পৃথক আপলোডে ছবি লিঙ্ক করতে পারে। হার্ডওয়্যার প্রকাশ না করে ছবি শেয়ার করলে Exif SubIFD স্ট্রিপ করুন।

সাধারণ ব্যবহার

EXIF স্ট্রিপিং যেকোনো সময় দেখা যায় যখন একটি ফটো হাত বদলায় এবং এটি বহনকারী মেটাডেটা প্রেরক বা বিষয়বস্তুর জন্য সমস্যা সৃষ্টি করতে পারে।

  • সোশ্যাল মিডিয়া আপলোড: বেশিরভাগ প্ল্যাটফর্ম সার্ভার-সাইডে EXIF স্ট্রিপ করে, কিন্তু ক্লায়েন্ট-সাইডে প্রথমে স্ট্রিপ করলে মূল স্থানাঙ্ক প্ল্যাটফর্মের সার্ভারে কখনও প্রেরণ হয় না।
  • সাংবাদিকতা ও ডকুমেন্টারি ফটোগ্রাফি: ওয়্যার সার্ভিস ও ফটো ডেস্ক পরিষ্কার মেটাডেটা প্রয়োজন যাতে বাইলাইন অ্যাট্রিবিউশন ও ক্যাপশন ডেটা ডেস্ক নিয়ন্ত্রণ করে, ক্যামেরা নয়।
  • সম্পত্তি ও পণ্য তালিকা: রিয়েল-এস্টেট এজেন্ট ও ই-কমার্স বিক্রেতারা নিয়মিত সম্পত্তি বা গুদাম ঠিকানায় তোলা ফটো আপলোড করেন। আপলোডের আগে GPS স্ট্রিপ করলে তালিকা অনিচ্ছাকৃতভাবে ফাইলে সঠিক ব্যবসার ঠিকানা প্রকাশ করা থেকে বিরত থাকে।

একটি কাজের উদাহরণ

সাম্প্রতিক iPhone-এ তোলা ৩.৫ MB JPEG-এ প্রায় ১২ KB APP1 মেটাডেটা থাকে: বিয়ারিং ও উচ্চতা সহ GPS স্থানাঙ্ক, মিলিসেকেন্ড পর্যন্ত ক্যাপচার টাইমস্ট্যাম্প, ক্যামেরা মডেল ও লেন্স আইডেন্টিফায়ার এবং ১৬০ × ১২০ এমবেডেড থাম্বনেইল। ডিফল্ট piexif পাথে স্ট্রিপ করার পরে ফাইল ৩.৪৮৮ MB-এ পৌঁছায় — ১২ KB হালকা, মূলের পিক্সেল-অভিন্ন, এবং লোকেশন পিং মুক্ত।

EXIF মেটাডেটা কী?

EXIF (Exchangeable Image File Format) হলো একটি স্ট্যান্ডার্ড যা সংজ্ঞায়িত করে ডিজিটাল ক্যামেরা ও স্মার্টফোন ছবির ফাইলের ভেতরে মেটাডেটা কীভাবে সংরক্ষণ করে। একটি সাধারণ স্মার্টফোন JPEG-এ ক্যামেরার মেক ও মডেল, লেন্স ফোকাল লেংথ, শাটার স্পিড, ISO, সঠিক GPS অবস্থান, নির্মাণ টাইমস্ট্যাম্প, এবং একটি ছোট এমবেডেড থাম্বনেইল থাকে।

ফটো শেয়ার করার আগে EXIF কেন স্ট্রিপ করব?

GPS ট্যাগ কয়েক মিটার নির্ভুলতায় ফটোটি কোথায় তোলা হয়েছিল তা প্রকাশ করে। স্ট্রিপ না করে ফটো শেয়ার করলে ফাইল পায় এমন সবার সাথে সেই অবস্থান শেয়ার করা হয়। ক্যামেরা সিরিয়াল নম্বর ও লেন্স আইডেন্টিফায়ার পৃথক আপলোডে ফটোগ্রাফারকে ফিঙ্গারপ্রিন্ট করতে পারে।

এটি কি ছবির মান প্রভাবিত করে?

ডিফল্ট piexif পাথ ছবির পিক্সেল না ছুঁয়ে APP1 সেগমেন্ট সরিয়ে দেয়, তাই মান মূলের সাথে বিট-অভিন্ন। ক্যানভাস পুনরায়-এনকোড পাথ (যখন "ICC কালার প্রোফাইল রাখুন" বন্ধ, বা ঘূর্ণিত ছবির জন্য "অভিমুখ রাখুন" চালু) নির্বাচিত JPEG মান স্লাইডার মানে পিক্সেল পুনরায়-এনকোড করে।

iPhone থেকে HEIC ফাইলের কী হবে?

HEIC স্ট্রিপিং আপনার ব্রাউজারের নেটিভ HEIC সমর্থনের উপর নির্ভর করে। Safari 13+ HEIC নেটিভ ডিকোড করে; Chrome ও Firefox করে না। আপনার ব্রাউজার HEIC প্রদর্শন করতে না পারলে, প্রথমে আপনার ফোনের "JPEG হিসেবে এক্সপোর্ট" বিকল্প ব্যবহার করুন (iOS Photos-এ: Share → Options → Most Compatible), তারপর এখানে JPEG আপলোড করুন।

প্রতিটি স্ট্রিপ আপনার ব্রাউজারে স্থানীয়ভাবে চলে। মূল ফটো কোনো সার্ভারে পৌঁছায় না, এবং পরিষ্কার করা ফাইল আপলোড সময় মেমরিতে লোড হওয়া ArrayBuffer থেকে সম্পূর্ণরূপে তৈরি হয়। উপরে একটি ফটো ড্রপ করুন, মেটাডেটা পরীক্ষা করুন, এবং স্ট্রিপ করা কপি ডাউনলোড করুন।