দুটি চিত্র একই হয় কীভাবে জানতে পারি? [বন্ধ]


20

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

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

আমার দ্বিতীয় চিন্তাটি ছিল images সমস্ত চিত্রের সদৃশ এবং এগুলিকে একটি কঠোর দুটি রঙের প্যালেটে (পুনরায় কালো এবং সাদা বলি) পুনরুদ্ধার করা এবং উপরে বর্ণিত একই স্ক্যানটি করা। তবুও আবার জেপিইজি চিত্রটি পিএনজি বা জিআইএফ ফর্ম্যাটের সাথে 100% সমান নয় (উপরের একই কারণ?)

তৃতীয় চিন্তার ছিল হ্রাস কত ইমেজ পরিচিত হতে এবং প্রয়োজন নেই উপর শতাংশ বৃদ্ধি কত রং পরিবর্তিত হতে পারে, অবাঞ্ছিত চিত্র অপসারণের ফলে ...

কোন চিন্তা?



ক্ষতিকারক সংকোচনের সাথে ফর্ম্যাটগুলি এমন চিত্রগুলিতে নিয়ে যাবে যা লসলেস সংস্করণগুলির সাথে 100% অভিন্ন নয়। আপনার কি কমান্ডলাইন ইউটিলিটি থাকতে হবে বা আপনি কোনও গুই প্রোগ্রাম চালাতে পারতেন, যা পরামর্শ দেয়, তারপরে যে চিত্রগুলি দেখায়, সেগুলি> 90% অনুরূপ পিক্সেল (একটি গড় বিচ্যুতি গণনা করুন) দেখায়? (এবং অবশ্যই পিক্সেল আকার যে কোনও বিন্যাসে অভিন্ন হওয়া উচিত)
Thorsten müller


1
কতজনের একই ফাইলের নাম তবে আলাদা এক্সটেনশন থাকবে?
JeffO

উত্তর:


17

ধারণাগত হ্যাশগুলির উত্তর হতে পারে:

http://www.phash.org/

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


9
  1. মাত্রা পরীক্ষা করুন। যদি আলাদা => চিত্রগুলি একই হয় না।
  2. ফর্ম্যাটগুলি পরীক্ষা করুন। যদি একই => সুনির্দিষ্ট তুলনা করা হয় তবে পিক্সেল দ্বারা পিক্সেল।
  3. যদি বিভিন্ন ফর্ম্যাট এটি করে:

আরজিবি (লাল, সবুজ, নীল) তুলনা করবেন না। উজ্জ্বলতাকে অর্ধেক ওজনের তুলনায় তুলনা করুন এবং অন্যান্য অর্ধের (বা 2/3 র্থ বনাম 1/3 য়) এর সাথে রঙ / বর্ণের তুলনা করুন। মানগুলির মধ্যে পার্থক্য গণনা করুন এবং 'সহনশীলতা' মানের উপর নির্ভর করে সেগুলি একই বা তারা নয়।

জেপিইজি ভারী রঙের তথ্য সংকুচিত করে তবে সীমাবদ্ধতার মানগুলি নষ্ট করার চেষ্টা করে না।


6

কয়েক বছর আগে যখন আমি দুগুজের জন্য একগুচ্ছ চিত্রের স্ক্রিনিং করছিলাম তখন আমি দেখতে পেলাম যে থাম্বনেইলগুলির মধ্যে দূরত্বের বর্গক্ষেত্রের ভিত্তিতে (তিনটি বর্ণ পৃথকভাবে চিকিত্সা করা) সমস্ত কিছু হ্রাস করে এবং তারপরে একটি সামঞ্জস্য স্কোর গণনা করা বেশ ভাল কাজ করেছে। মনে রাখবেন আপনি মেমরিতে 8x8 থাম্বনেলগুলি প্রচুর পরিমাণে ধরে রাখতে পারেন ।

কার্যত সমস্ত ডুপ নন-ডুপসের নীচে স্কোর করে, কেবলমাত্র কিছু চিত্রের মধ্যেই সমস্যাগুলি খুব কম বিপরীতে এবং একইভাবে সামগ্রিক ছিল যদিও প্রকৃত সামগ্রীতে বৈচিত্র ছিল (প্রতিটি ক্ষেত্রে পটভূমি সৈকত বালি ছিল))

ফাইলের আকার কেটে দেওয়ার জন্য কারও মধ্যে রেজোলিউশন বা গুণমান হ্রাস না করা ব্যতীত এমন চিত্রগুলি ধরতেও এটি কার্যকর ছিল।


1
সাধারণত YUV আরজিবি থেকে ভাল, রঙের ভারসাম্যের সামান্য পরিবর্তনের ক্ষেত্রে কম সংবেদনশীল।
মার্টিন বেকেট

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

@ মার্টিন বেকেট: আরজিবি পার্থক্যের স্কোয়ারের যোগফল আমি প্রথমে চেষ্টা করেছি এবং এটি যথেষ্ট ভাল কাজ করেছে যে আমি এটির উন্নতি করার চেষ্টা করি নি - এবং এটি সম্পাদনার সাথে দ্বিপাক্ষিক ছিল। ডুপের কঠোর সংজ্ঞা সহ এটি যথেষ্ট ভাল ছিল যে আমি এটিকে স্বয়ংক্রিয়ভাবে মুছতে দিতাম।
লরেন পেচটেল

@ লরেন, যদি তারা একই চিত্রের গৌণ পিক্সেল সম্পাদনা হত যা কাজ করা উচিত। এটি ঠিক যে জেপিগের মতো জিনিসগুলি ইউজিভি রঙের জায়গার চেয়ে আরজিবিকে জগাখিচু করে। মাত্র একটি টিপ ;-)
মার্টিন বেকেট

প্রকৃতি অনুসারে, খুব গা dark় ছবিগুলির মধ্যে স্কোর-অফ-স্কোয়ার-এর পার্থক্য কম থাকে, যদিও এগুলি একেবারে এক নয়। থ্রেশহোল্ডটি ছবির গড় আলোকিততার সাথে সামঞ্জস্য হতে পারে। ও (এন ^ 2) চিত্রের তুলনা এড়ানোর জন্য আমি এই গড় আলোকসজ্জাটিকে একটি পূর্ব-ফিল্টার হিসাবে ব্যবহার করি, সুতরাং এটি ইতিমধ্যে রয়েছে।
গ্যাব্রিয়েল

1

হতে পারে আপনার এমন কিছু কোড লেখা উচিত যা চিত্রগুলির তুলনায় স্ক্যান করে। আপনি সমস্ত ছবিগুলিকে আরজিবি ফর্ম্যাটে রূপান্তর করতে এবং তাদের তুলনা করতে পারেন। (স্মৃতিতে)

একটি সম্ভাব্য পদ্ধতির উপায় এটি হতে পারে: ছবিগুলিকে জোনে ভাগ করুন। তুলনামূলকভাবে দুটি ছবির তুলনায় জোনের গড় রঙ এবং / অথবা উজ্জ্বলতা স্ক্যান করুন।

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.