توضیحات
پروژه شبیه سازی واترمارکینگ با کوانتیزاسیون ضرایب درختی ویولت در متلب:
- کد به همراه عکس ورودی ضمیمه شده است.
- کامنتها تا حد امکان نوشته شده است.
- به دلیل پیچیدگی بالای کد، طول واترمارک کوچک در نظر گرفته شده است تا برنامه سریعتر اجرا شود.
- در واترمارک استخراج شده همچنان مقداری خطا وجود دارد. اما دقیقا روش مقاله پیاده سازی شده ولی ممکن است برخی نکات ریز در آن ذکر نشده باشد که منجر به این خطا می شود.
توضیحات پروژه:
در این پروژه آماده متلب ابتدا ضرایب ویولت دیجیتال تصویر محاسبه می شود. این کار در 4 سطح انجام می شود. سپس از این ضرایب ساختار درختی تولید شده و با توجه به مقدار بیت نهان نگاره، این ضرایب کوانتیزه می شوند. در نهایت تصویر شامل نهان نگاره از ضرایب کوانتیزه شده با تبدیل معکوس ویولت محاسبه می شود. در سمت گیرنده نیز برای استخراج نهان نگاره از تصویر، مجددا ضرایب ویولت و به تبع آن ساختار درختی ضرایب محاسبه شده و با توجه به سطح کوانتیزاسیون محاسبه شده از ساختار درختی، پارامتر تصمیم گیری محاسبه شده و بر اساس آن بیت نهان نگاره تخمین زده می شود.
محاسبه ضرایب ویولت:
برای محاسبه ضرایب در 4 سطح، از تبدیل دو بعدی ویولت با تابع مادر db1 استفاده می شود. با اعمال مجدد این تبدیل بر ضرایب approximation مرحله قبلی، ضرایب سطح دو محاسبه می شود. به همین ترتیب ضرایب سطح 3 و 4 نیز محاسبه می شود. با توجه به اینکه ابعاد تصویر ورودی 512 در 512 است. ضرایب افقی، عمودی و قطری سطح 1، ماتریسهای 256 در 256 است. برای سطح 2 این ابعاد 128 در 128، برای سطح 3، 64 در 64 و برای سطح 4، 32 در 32 است.
ساختار درختی ضرایب ویولت:
با توجه به توضیحات مقاله، این ساختار درختی در سه گروه شکل می گیرد. هر گروه شامل یک ضریب سطح 4، 4 ضریب سطح 3 و 16 ضریب سطح 2 است. بنابراین هر گروه دارای 21 المان است. با توجه به شکل مقاله، تعداد گروهها 3*1024 است که مجموعا 3072 گروه می شود. هر دو گروه یک فرا درخت را تشکیل می دهند که شامل 42 ضریب است و تعداد کل فرادرختها 1536 می شود. از هر دو فرادرخت برای قرار دادن یک بیت نهان نگاره استفاده می شود، بنابراین نهایت ظرفیت تصویر 768 بیت است. در شبیه سازی تعداد بیت نهان نگاره 512 در نظر گرفته می شود.
ساختار باینری ضرایب:
با توجه به مقادیر ضرایب، از 16 بیت برای تبدیل ضرایب به مقدار باینری استفاده می شود. هر فرادرخت شامل 42 المان است که هر کدام با 16 بیت نمایش داده می شود. بنابراین هر فرادرخت به صورت یک ماتریس باینری 16 در 42 است. البته در اینجا از بیت علامت صرفنظر می شود. همچنین قبل از تبدیل ضرایب به باینری ، این ضرایب به نزدیکترین مقدار صحیح گرد می شوند.
کوانتیزاسیون فرا درخت و محاسبه سطح کوانتیزاسیون آن:
برای کوانتیزه کردن فرا درخت که شامل یک ماتریس با ابعاد 42*16 است، به مقدار سطح کوانتیزاسیون qn نیاز است. با فرض داشتن این مقدار، مختصات این مقدار با توجه به ماتریس فرادرخت محاسبه می شود. به طور مثال اگر این مقدار 34 باشد، مختصات آن سطر اول از پایین و ستون 34 ام از سمت چپ است. اگر مقدار آن 90 باشد، سطر 3 از پایین و ستون 8 از چپ است. به عبارتی سطر آن را خارج قسمت تقسیم مقدار qn بر 42 و ستون آن را باقیمانده این تقسیم تعیین می کند. اما قبل از کوانتیزاسیون مقدار بهینه qn برای فرادرخت باید محاسبه شود. برای این کار مقدار qn مرحله به مرحله از 1 افزایش می یابد و در هر مرحله اختلاف مقدار ضرایب فرا درخت با مقدار کوانتیزه شده به طریق بالا محاسبه شده و در صورت عدم فراتر رفتن آن از یک مقدار ماکزیمم E فرآیند ادامه می یابد. البته این کار به مقدار qn ماکزیمم 336 محدود می شود.
نهان نگاری بیت:
برای هر بیت نهان نگاره، دو فرادرخت به ترتیب انتخاب شده و اگر بیت 1- باشد، فرادرخت با اندیس فرد و اگر 1+ باشد، اندیس زوج برای کوانتیزاسیون استفاده می شود. با توجه به qn محاسبه شده در مرحله قبل برای این بیت نهان نگاره، کار کوانتیزاسیون انجام می شود. به این ترتیب تمامی فرادرختهای مورد نظر برای نهان نگاری بیتها، کوانتیزه می شود. در نهایت باید این ضرایب به فرم ابتدایی خود بازگشته و تصویر اصلی با تبدیل ویولت معکوس ساخته شود. به این ترتیب تصویر شامل نهان نگاره تشکیل می شود.
بازیابی نهان نگاره:
برای این کار روند محاسبه ضرایب ویولت، گروهها و فرادرختها همچون قسمت قبل طی میشود. سپس از ابتدا فرادرختها به صورت جفت انتخاب شده و برای آنها مقدار qn بهینه همچون قبل محاسبه می شود. سپس در یک جفت فرا درخت، کار کوانتیزاسیون با مقدار qn محاسبه شده، انجام می شود و اختلاف آن با مقدار اصلی خود بدست می آید. سپس این مقدار بر خطای کوانتیزاسیون تقسیم شده و به این ترتیب برداری شامل مقادیر مختلف بدست می آید. با مقایسه مقادیر این بردار با یک سطح آستانه تعداد المانهایی که از آن بیشتر هستند محاسبه میشود. این کار برای فرادرخت دیگر نیز انجام میشود. حال اگر عدد محاسبه شده برای فرادرخت با اندیس فرد بیشتر از عدد فرادرخت با اندیس زوج باشد، مقدار بیت نهان نگاره 1- تخمین زده می شود و بالعکس.
تصویر ورودی در برنامه:
نکات قابل ذکر:
- پروژه شبیه سازی واترمارکینگ با کوانتیزاسیون ضرایب درختی ویولت در متلب توسط کارشناسان گروه ۱.۲.۳ پروژه پیاده سازی گردیده و به تعداد محدودی قابل فروش می باشد.
- فایل های پروژه به صورت کامل + فایل راهنما پس از خرید فایل در اختیار شما قرار خواهد گرفت.
سفارش پروژه مشابه
درصورتیکه این پروژه دقیقا مطابق خواسته شما نمی باشد، با کلیک بر روی کلید زیر پروژه دلخواه خود را سفارش دهید.
نقد و بررسیها
هنوز بررسیای ثبت نشده است.