{"id":6537,"date":"2009-09-30T23:28:17","date_gmt":"2009-09-30T21:28:17","guid":{"rendered":"https:\/\/www.dreamsworld.it\/emanuele\/?p=6537"},"modified":"2009-09-29T23:03:39","modified_gmt":"2009-09-29T21:03:39","slug":"come-specchiare-una-immagine-con-matlab","status":"publish","type":"post","link":"https:\/\/www.dreamsworld.it\/emanuele\/2009-09-30\/come-specchiare-una-immagine-con-matlab\/","title":{"rendered":"Come specchiare una immagine con MATLAB."},"content":{"rendered":"<p>Il primo esercizio dell&#8217;<a title=\"Prendere o lasciare?!\" href=\"\/\/www.dreamsworld.it\/emanuele\/2009-09-29\/prendere-o-lasciare\/\" target=\"_blank\">esame di ieri<\/a> consisteva nello <strong>specchiare rispetto alla diagonale un&#8217;immagine<\/strong> in toni di grigio.<\/p>\n<p>Per intenderci, dovevo realizzare un risultato simile a questo (<em>immagine originale a sinistra, specchiata a destra<\/em>).<\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment wp-att-6538 centered\" src=\"\/\/www.dreamsworld.it\/emanuele\/wp-content\/uploads\/2009\/09\/2009-09-30_immagine_specchiata_diagonale.jpg\" alt=\"Immagine specchiata lungo la diagonale\" width=\"600\" height=\"256\" \/><\/p>\n<p>Nulla di pi\u00f9 semplice&#8230; <strong>bastano due cicli<\/strong> annidati per ottenere il risultato:<\/p>\n<pre lang=\"matlab\" line=\"1\">% Carico l'immagine\r\nim=imread('cameraman.tif');\r\n% Salvo le sue dimensioni\r\n[m n]=size(im);\r\n% Creo la matrice dell'immagine in uscita e la inizializzo a zero\r\nim_out=zeros(m,n);\r\n% Ecco il ciclo che - semplicemente - andr\u00e0 a scansionare l'immagine\r\n% di partenza a ritroso e salver\u00e0 il risultato in im_out\r\nfor i=1:m-1\r\n\tfor j=1:n-1\r\n\t\tx=m-i;\r\n\t\ty=n-j;\r\n\t\tim_out(i,j)=im(x,y);\r\n\tend\r\nend\r\n% Disegno le due immagini per confrontare il risultato\r\nsubplot(1,2,1);\r\nimshow(im);\r\nsubplot(1,2,2);\r\nimshow(uint8(im_out));<\/pre>\n<p>Il risultato sar\u00e0 questo qui:<\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment wp-att-6539 centered\" src=\"\/\/www.dreamsworld.it\/emanuele\/wp-content\/uploads\/2009\/09\/2009-09-30_cameraman_specchiato_diagonale.jpg\" alt=\"Immagine cameraman specchiata diagonalmente\" width=\"553\" height=\"310\" \/><\/p>\n<p>Per <strong>specchiare in massa una serie di immagini<\/strong> baster\u00e0 creare una semplice routine che carichi a turno le immagini da elaborare. \ud83d\ude42<\/p>\n<p><strong>Emanuele<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Il primo esercizio dell&#8217;esame di ieri consisteva nello specchiare rispetto alla diagonale un&#8217;immagine in toni di grigio. Per intenderci, dovevo realizzare un risultato simile a questo (immagine originale a sinistra, specchiata a destra). Nulla di pi\u00f9 semplice&#8230; bastano due cicli &hellip; <a href=\"https:\/\/www.dreamsworld.it\/emanuele\/2009-09-30\/come-specchiare-una-immagine-con-matlab\/\">Leggi ancora &rarr;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"activitypub_content_warning":"","activitypub_content_visibility":"","activitypub_max_image_attachments":4,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"","footnotes":""},"categories":[1],"tags":[1629,595,640,1628,242,1532,38,31],"class_list":["post-6537","post","type-post","status-publish","format-standard","hentry","category-all-day","tag-elaborazione-delle-immagini-digitali","tag-fotografie","tag-how-to","tag-matlab","tag-programmazione","tag-specchio","tag-studiare","tag-universita"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.dreamsworld.it\/emanuele\/wp-json\/wp\/v2\/posts\/6537","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dreamsworld.it\/emanuele\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dreamsworld.it\/emanuele\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dreamsworld.it\/emanuele\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dreamsworld.it\/emanuele\/wp-json\/wp\/v2\/comments?post=6537"}],"version-history":[{"count":0,"href":"https:\/\/www.dreamsworld.it\/emanuele\/wp-json\/wp\/v2\/posts\/6537\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.dreamsworld.it\/emanuele\/wp-json\/wp\/v2\/media?parent=6537"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dreamsworld.it\/emanuele\/wp-json\/wp\/v2\/categories?post=6537"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dreamsworld.it\/emanuele\/wp-json\/wp\/v2\/tags?post=6537"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}