ایجاد ماتریس ها در OpenCV

در مطلب قبلی در مورد کلاس Mat و ذخیره سازی یک تصویر به صورت یک ماتریس از اعداد صحبت کردیم. توضیح دادیم که هر درایه از ماتریس به یک نقطه یا پیکسل از تصویر اشاره می کند. در واقع هر درایه از ماتریس عددی است که نشان دهنده شدت رنگ در آن نقطه (پیکسل) از تصویر است.در این مطلب می خواهیم متدهایی از کلاس Mat را معرفی کنیم که برای ایجاد چند ماتریس کاربردی، استفاده می شوند.در انتها نیز یک مثال کلی از ماتریس ها را آورده ایم.

ایجاد ماتریسی از عدد صفر

در OpenCV و از کلاس Mat متدی به نام ()ones وجود دارد که از آن می توانیم برای ایجاد یک ماتریس اعداد یک استفاده کنیم. کد زیر یکی از فرمت های این متد را نشان می دهد. همچنین این متد دارای override های دیگری است که می توانید از اینجا مطالعه کنید.

همانطور که می بینید تنها لازم است تا تعداد سطرها، ستون ها و نوع مقادیری که دردرایه های ماتریس نگهداری می شوند را تعیین کنیم. در خط از کد زیر مثالی از این متد آورده شده است.

ایجاد ماتریسی از عدد یک

در OpenCV و از کلاس Mat متدی به نام ()ones وجود دارد که از آن می توانیم برای ایجاد یک ماتریس اعداد یک استفاده کنیم. کد زیر یکی از فرمت های این متد را نشان می دهد. همچنین این متد دارای override های دیگری است که می توانید از اینجا مطالعه کنید.

همانطور که می بینید تنها لازم است تا تعداد سطرها، ستون ها و نوع مقادیری که دردرایه های ماتریس نگهداری می شوند را تعیین کنیم. در کد زیر مثالی از این متد آورده شده است.

ایجاد ماتریس همانی

در جبر خطی ماتریس همانی (Identity Matrix) یا ماتریس یکه به یک ماتریس ?×? (یا ماتریس مربعی) گفته می‌شود که درایه های قطر اصلی آن عدد یک و بقیه درایه ها صفر باشند. در مطالب بعدی توضیح داده ایم که چگونه ماتریس ها، از جمله ماتریس همانی به اعمال فیلتر بر روی تصویر کمک می کنند.

در OpenCV و از کلاس Mat متدی به نام ()eye وجود دارد که از آن می توانیم برای ایجاد یک ماتریس همانی استفاده کنیم. کد زیر یکی از فرمت های این متد را نشان می دهد. همچنین این متد دارای override های دیگری است که می توانید از اینجا مطالعه کنید.

همانطور که می بینید تنها لازم است تا تعداد سطرها، ستون ها و نوع مقادیری که دردرایه های ماتریس نگهداری می شوند را تعیین کنیم. در قطعه کد زیر مثالی از این متد آورده شده است.