সমস্ত চিত্র প্রক্রিয়াকরণ প্যাকেজগুলির এটি সহজ করা উচিত। এই পদ্ধতিতে আপনার যদি অ্যাক্সেস থাকে তবে আমি ম্যাথামেটিকায় এটি কীভাবে করব তা আমি আপনাকে দেখাব। ম্যাথেমেটিকা একটি প্রোগ্রামিং ল্যাঙ্গুয়েজ, তবে এই ধরণের ম্যানিপুলেশনগুলি করা সত্যিই সহজ, সুতরাং যদি আপনার এটির অ্যাক্সেস থাকে (উদাহরণস্বরূপ কোনও বিশ্ববিদ্যালয়ের সাইট লাইসেন্সের মাধ্যমে), তবে আমি আপনাকে প্রস্তাব দিন!
প্রথমে চিত্রটি আমদানি করুন:
img = Import["http://farm1.staticflickr.com/62/171463865_36ee36f70e.jpg"]
জেপিইজি সংক্ষেপণ ব্যবহার করে এটি পুনরায় সংক্ষেপণ করুন
img2 = ImportString@ExportString[img, "JPEG", "CompressionLevel" -> 0.35]
Negativeণাত্মক মান সংরক্ষণ করা হয়েছে তা নিশ্চিত করার জন্য পিক্সেল মানগুলির পার্থক্যটি ধরুন এবং এটিকে প্রথমে ভাসমান পয়েন্ট সংখ্যায় রূপান্তর করুন।
diff = ImageSubtract[Image[img, "Real"], Image[img2, "Real"]]
পার্থক্য চিত্রটিতে খুব বেশি দৃশ্যমান হয় না (পার্থক্যটি ক্ষুদ্র), এবং নেতিবাচক মানগুলি কালোতে ছাঁটা হয়েছে। সুতরাং আসুন পুরো গতিশীল পরিসর পূরণের জন্য সমস্ত মান পুনরুদ্ধার করা যাক (সর্বনিম্ন 0 থেকে স্কেল করা হবে, সর্বোচ্চ 1 থেকে):
ImageAdjust[diff]
ImageDifference
দুটি চিত্রের নিখুঁত পার্থক্য দেয় এবং কোনও নেতিবাচক সংখ্যা দেয় না। ইমেজ প্রসেসিং প্যাকেজগুলিতে, বিশেষত জিইউআই'র (ফটোশপ, জিআইএমপি) সন্ধান করার সম্ভাবনা আপনার এই অপারেশন।
ImageDifference[img, img2]
আমরা একটি একক আরজিবি চ্যানেলও নিতে পারি, উদাহরণস্বরূপ লালটি এবং 'বিরোধী' রং ব্যবহার করে ইতিবাচক এবং নেতিবাচক পার্থক্যটি কল্পনা করতে পারি:
ArrayPlot[0.5 + ImageData[First@ColorSeparate[diff, "Red"]],
ColorFunction -> "RedGreenSplit", ColorFunctionScaling -> False]
পার্থক্যগুলি 5 বার প্রশস্ত করে এখানে একই জিনিস। জেপিজি আর্টেফ্যাক্টগুলি এখন আরও স্বীকৃত।
ArrayPlot[0.5 + 5 ImageData[First@ColorSeparate[diff, "Red"]],
ColorFunction -> "RedGreenSplit", ColorFunctionScaling -> False]
প্রোগ্রামিং ল্যাঙ্গুয়েজ ব্যবহারের সুবিধা হ'ল আমরা সহজেই এটিকে স্বয়ংক্রিয় করতে পারি এবং দেখতে পারি যে "সংকোচনের মাত্রায়" 0.1 এবং 1.0 এর মধ্যে পার্থক্য কীভাবে পরিবর্তিত হয়:
Grid@Partition[Table[
ArrayPlot[
0.5 + ImageData[
First@ColorSeparate[
ImageSubtract[Image[img, "Real"],
Image[ImportString@
ExportString[img, "JPEG", "CompressionLevel" -> c],
"Real"]], "Red"]], ColorFunction -> "RedGreenSplit",
ColorFunctionScaling -> False],
{c, 0.1, 1, 0.1}
], 5]