Edge Detection ກວດຈັບຂອບຂອງຕົວໜັງສືໃນຮູບພາບດ້ວຍ MATLAB
ໝາຍເຫດ: ນີ້ເປັນໜຶ່ງໃນ assignment ທີ່ຂ້ອຍໄດ້ໃນລະຫວ່າງການຮຽນ ແລະຟັງຊັນທີ່ຂ້ອຍຂຽນໃນນີ້ ແມ່ນໄດ້ຈາກການຊ່ວຍເຫຼືອຈາກ community ຂອງ Matlab ຂ້ອຍບໍ່ຖືວ່ານີ້ເປັນຜົນງານຂອງຂ້ອຍພຽງຄົນດຽວ ຂ້ອຍນຳມາແບ່ງປັນຈຸດປະສົງເພື່ອການສຶກສາ
ສຳລັບໂພສນີ້ ເປັນການຂຽນຟັງຊັນເພື່ອກວດຈັບຂອບຂອງຕົວໜັງສືໃນຮູບພາບ ດັ່ງຮູບລຸ່ມນີ້
| ຮູບທີ່ຖືກປະມວນຜົນແລ້ວ |
| ຮູບ original |
ເລີ່ມດ້ວຍການຂຽນຟັງຊັນ
function output = edgy(input)input = uint8(input); % ປ່ຽນ input ເປັນ uint8input = double(input); % ປ່ຽນ input ເປັນ doubleimage = zeros(size(input)); % ປ່ຽນຂະໜາດຂອງຮູບພາບໃຫ້ເປັນ 0 px = [-1 0 1; -2 0 2; -1 0 1]; py = [-1 -2 -1; 0 0 0; 1 2 1]; for i = 1:size(input, 1) - 2 for j = 1:size(input, 2) - 2 Gx = sum(sum(px.*input(i:i+2, j:j+2))); Gy = sum(sum(py.*input(i:i+2, j:j+2))); image(i+1, j+1) = sqrt(Gx.^2 + Gy.^2); endendimage = image(2:(end-1), 2:(end-1)); output = uint8(image); endc = imread("CocaCola.png");figureimshow(c);edge = edgy(c);figureimshow(edge);ລອງຮູບອື່ນ
Output
ແລະນີ້ຄືຟັງຊັນສຳລັບການກວດຈັບຂອບໃນຮູບພາບທີ່ຂຽນໃນ MATLAB
Thankyou :)❤
Comments
Post a Comment