{"id":162,"date":"2020-12-04T00:09:08","date_gmt":"2020-12-04T00:09:08","guid":{"rendered":"http:\/\/med-space.org\/youssef-zaz-master\/?page_id=162"},"modified":"2020-12-11T22:29:08","modified_gmt":"2020-12-11T22:29:08","slug":"histogramme-et-applications","status":"publish","type":"page","link":"https:\/\/yzaz.net\/master\/histogramme-et-applications\/","title":{"rendered":"Histogramme et applications"},"content":{"rendered":"<p>L\u2019histogramme d\u2019une image est la fonction qui associe \u00e0 chaque valeur d\u2019intensit\u00e9 le nombre de pixels dans l\u2019image ayant cette valeur.<\/p>\n<table>\n<tbody>\n<tr>\n<td><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-252\" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/cameraman3-.jpg\" alt=\"\" width=\"256\" height=\"256\" srcset=\"https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/cameraman3-.jpg 256w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/cameraman3--150x150.jpg 150w\" sizes=\"(max-width: 256px) 100vw, 256px\" \/><\/td>\n<td><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-334 \" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/hist-678x381.jpg\" alt=\"\" width=\"462\" height=\"249\" \/><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center;\">Image niveau de gris<\/td>\n<td style=\"text-align: center;\">histogramme de l&#8217;image<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Deux images diff\u00e9rentes peuvent avoir le m\u00eame histogramme:<\/p>\n<table>\n<tbody>\n<tr>\n<td><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-337 alignnone\" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/damier-300x300.png\" alt=\"\" width=\"300\" height=\"300\" srcset=\"https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/damier-300x300.png 300w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/damier-150x150.png 150w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/damier-768x768.png 768w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/damier.png 960w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/td>\n<td>\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-338\" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/damier-2-300x300.png\" alt=\"\" width=\"300\" height=\"300\" srcset=\"https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/damier-2-300x300.png 300w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/damier-2-150x150.png 150w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/damier-2.png 400w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><strong>Luminance<\/strong><\/p>\n<p>La luminance (ou brillance) est d\u00e9finie comme la moyenne de tous les pixels de l\u2019image.<br \/>\nPour augmenter la luminance, il suffit de d\u00e9caler l\u2019histogramme :<\/p>\n<p>I'(i , j) = I (i , j) + b<\/p>\n<p>Dans les deux images suivantes, seule la luminance est diff\u00e9rente<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-340 size-full aligncenter\" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/luminance.jpg\" alt=\"\" width=\"680\" height=\"512\" srcset=\"https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/luminance.jpg 680w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/luminance-300x226.jpg 300w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/luminance-678x509.jpg 678w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/luminance-326x245.jpg 326w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/luminance-80x60.jpg 80w\" sizes=\"(max-width: 680px) 100vw, 680px\" \/><\/p>\n<p>Dynamique d\u2019une image : D = [val<sub>min<\/sub> , val<sub>max<\/sub> ]<\/p>\n<p><strong>Contraste<\/strong><br \/>\nLe contraste peut \u00eatre d\u00e9fini de plusieurs fa\u00e7ons :<br \/>\nVariance des niveaux de gris (N nombre de pixels dans l\u2019image)<\/p>\n<p style=\"text-align: center;\"><span class=\"katex-eq\" data-katex-display=\"false\">\n\n\\frac{1}{N}\\sum\\limits ^{N}_{n=1}( I( i,j) -Moy)^{2}\n\n<\/span><\/p>\n<p>Variation entre niveaux de gris max et min<\/p>\n<p style=\"text-align: center;\"><span class=\"katex-eq\" data-katex-display=\"false\">\n\n\\frac{max[ I( i,j)] -min[ I( i,j)]}{max[ I( i,j)] +min[ I( i,j)]}\n\n<\/span><\/p>\n<p>Pour am\u00e9liorer le contraste, il existe plusieurs techniques:<\/p>\n<ul>\n<li>Transformation lin\u00e9aire<\/li>\n<li>Transformation lin\u00e9aire avec saturation<\/li>\n<li>Transformation lin\u00e9aire par morceau<\/li>\n<li>Transformation non\u2010lin\u00e9aire<\/li>\n<li>\u00c9galisation de l\u2019histogramme<\/li>\n<\/ul>\n<p><strong>Transformation lin\u00e9aire<\/strong><br \/>\nOn \u00e9tire la dynamique en r\u00e9\u00e9chelonnant les niveaux de gris entre 0 et 255<\/p>\n<p style=\"text-align: center;\"><span class=\"katex-eq\" data-katex-display=\"false\">\n\nI&#039;( i,j) =\\frac{255}{max-min} \\ ( I( i,j) -min)\n\n<\/span><br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-349 aligncenter\" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/courbe1-300x255.jpg\" alt=\"\" width=\"300\" height=\"255\" srcset=\"https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/courbe1-300x255.jpg 300w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/courbe1.jpg 305w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><br \/>\nExemple<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"wp-image-347 size-full aligncenter\" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/boat-contrast.jpg\" alt=\"\" width=\"698\" height=\"458\" srcset=\"https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/boat-contrast.jpg 698w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/boat-contrast-300x197.jpg 300w\" sizes=\"(max-width: 698px) 100vw, 698px\" \/><\/p>\n<p style=\"text-align: right;\"><span style=\"color: #3366ff;\">Source: (*)<br \/>\n<\/span><\/p>\n<p><strong>impl\u00e9mentation<\/strong><br \/>\nId\u00e9e de base:<br \/>\nFor ( I=0;\\ i&lt; nl;i++)<br \/>\nFor ( j=0;j&lt; nc;j++)<\/p>\n<p style=\"text-align: center;\"><span class=\"katex-eq\" data-katex-display=\"false\">\n\nI&#039;( i,j) =\\frac{255}{max-min} \\ ( I( i,j) -min)\n\n<\/span><\/p>\n<p>Code Matlab<\/p>\n<pre class=\"brush: matlabkey; title: ; notranslate\" title=\"\">\r\nim=imread('pout.tif');\r\nma = max(max(im));\r\nmi = min(max(im));\r\nres=(im-mi).*(255.\/(ma-mi));\r\nsubplot ( 2 , 2 , 1 ) ; imshow(im) ; title ( 'Image originale' ) ;\r\nsubplot ( 2 , 2 , 2 ) ; imshow(res) ; title ( 'Image trasfom\u00e9e avec LUT lin\u00e9aire' ) ;\r\nsubplot ( 2 , 2 , 3 ) ; imhist(im) ; title ( 'Histogramme image originale' ) ;\t\r\nsubplot ( 2 , 2 , 4 ) ; imhist(res) ; title ( 'Histogramme image trait\u00e9e' ) ;\r\n<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-360 size-large\" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/lut-1024x611.jpg\" alt=\"\" width=\"1024\" height=\"611\" srcset=\"https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-1024x611.jpg 1024w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-300x179.jpg 300w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-768x459.jpg 768w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut.jpg 1050w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p><strong>Transformation lin\u00e9aire avec saturation<\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-367 size-full\" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/lut-saturation.jpg\" alt=\"\" width=\"806\" height=\"488\" srcset=\"https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-saturation.jpg 806w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-saturation-300x182.jpg 300w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-saturation-768x465.jpg 768w\" sizes=\"(max-width: 806px) 100vw, 806px\" \/><\/p>\n<p style=\"text-align: right;\">Source: (*)<\/p>\n<p>Exemple avec Matlab:<\/p>\n<pre class=\"brush: matlabkey; title: ; notranslate\" title=\"\">\r\nim=imread('pout.tif');\r\nmi = 80;\r\nma = 150;\r\nres=(im-mi).*(255.\/(ma-mi));\r\nsubplot ( 2 , 2 , 1 ) ; imshow(im) ; title ( 'Image originale' ) ;\r\nsubplot ( 2 , 2 , 2 ) ; imshow(res) ; title ( 'Image transfom\u00e9e avec LUT lin\u00e9aire avec saturation' ) ;\r\nsubplot ( 2 , 2 , 3 ) ; imhist(im) ; title ( 'Histogramme image originale' ) ;\r\nsubplot ( 2 , 2 , 4 ) ; imhist(res) ; title ( 'Histogramme image trait\u00e9e' ) ;\r\n<\/pre>\n<p>&nbsp;<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-363 size-large\" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/lut-sat-1-1024x608.jpg\" alt=\"\" width=\"1024\" height=\"608\" srcset=\"https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-sat-1-1024x608.jpg 1024w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-sat-1-300x178.jpg 300w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-sat-1-768x456.jpg 768w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-sat-1.jpg 1042w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p style=\"text-align: right;\">Transformation lin\u00e9aire par morceaux<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-365 size-full\" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/lut-morceau.jpg\" alt=\"\" width=\"844\" height=\"520\" srcset=\"https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-morceau.jpg 844w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-morceau-300x185.jpg 300w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-morceau-768x473.jpg 768w\" sizes=\"(max-width: 844px) 100vw, 844px\" \/>Source: (*)<\/p>\n<p><strong>Transformation non lin\u00e9aire<\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-366 size-full\" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/lut-non-lineaire.jpg\" alt=\"\" width=\"738\" height=\"612\" srcset=\"https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-non-lineaire.jpg 738w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/lut-non-lineaire-300x249.jpg 300w\" sizes=\"(max-width: 738px) 100vw, 738px\" \/><\/p>\n<p><strong>Autres transformations d\u2019histogramme<\/strong><\/p>\n<p><strong>L&#8217;image n\u00e9gative:<\/strong><\/p>\n<pre class=\"brush: matlabkey; title: ; notranslate\" title=\"\">\r\npositiveImage = imread('CameraMan.tif');\r\nnegativeImage = 255 - positiveImage;\r\nsubplot ( 1 , 2 , 1 ) ; imshow(positiveImage) ; title ( 'Image positive' ) ;\r\nsubplot ( 1 , 2 , 2 ) ; imshow(negativeImage) ; title ( 'Image negative' ) ;\r\n<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-371 size-full aligncenter\" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/negative.jpg\" alt=\"\" width=\"633\" height=\"288\" srcset=\"https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/negative.jpg 633w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/negative-300x136.jpg 300w\" sizes=\"(max-width: 633px) 100vw, 633px\" \/><\/p>\n<p><strong>Egalisation d\u2019histogramme<\/strong><\/p>\n<p>l&#8217;\u00e9galisation d&#8217;histogramme est une m\u00e9thode d&#8217;ajustement du contraste d&#8217;une image num\u00e9rique qui utilise l&#8217;histogramme. Elle consiste \u00e0 appliquer une transformation sur chaque pixel de l&#8217;image, et donc d&#8217;obtenir une nouvelle image \u00e0 partir d&#8217;une op\u00e9ration ind\u00e9pendante sur chacun des pixels. Cette transformation est construite \u00e0 partir de l&#8217;histogramme cumul\u00e9 de l&#8217;image de d\u00e9part.<\/p>\n<p>L&#8217;\u00e9galisation d&#8217;histogramme permet de mieux r\u00e9partir les intensit\u00e9s sur l&#8217;ensemble de la plage de valeurs possibles, en \u00e9talant l&#8217;histogramme.<\/p>\n<p>M\u00e9thode :<\/p>\n<ul>\n<li>On cherche \u00e0 aplanir l\u2019histogramme<\/li>\n<li>Calcul de l\u2019histogramme h(k) avec k appartient \u00e0 [0; 255]<\/li>\n<li>Histogramme cumul\u00e9<\/li>\n<li>Transformation des niveaux de gris de l\u2019image<\/li>\n<\/ul>\n<p>Code Matlab:<\/p>\n<pre class=\"brush: matlabkey; title: ; notranslate\" title=\"\">\r\nI = imread('pout.tif');\r\nimshow(I)\r\nimhist(I)\r\nI2 = histeq(I); \r\nsubplot ( 2 , 2 , 1 ) ; imshow( I) ; title ( 'Image originale' ) ;\r\nsubplot ( 2 , 2 , 3 ) ; imhist(I) ; title ( 'Histogramme original' ) ;\r\nsubplot ( 2 , 2 , 2 ) ; imshow(I2) ; title ( 'Image trait\u00e9e (\u00e9galisation d''histogramme)' ) ;\r\nsubplot ( 2 , 2 , 4 ) ; imhist(I2) ; title ( 'Histogramme \u00e9galis\u00e9' ) ;\r\n<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-375 size-large\" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/egalisation-histogramme-1-1024x597.jpg\" alt=\"\" width=\"1024\" height=\"597\" srcset=\"https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/egalisation-histogramme-1-1024x597.jpg 1024w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/egalisation-histogramme-1-300x175.jpg 300w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/egalisation-histogramme-1-768x447.jpg 768w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/egalisation-histogramme-1.jpg 1042w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p><strong>Egalisation d\u2019une image couleur<\/strong><\/p>\n<ul>\n<li>Calculer l\u2019intensit\u00e9 de l\u2019image couleur I = (R + V + B)=3<\/li>\n<li>Calculer l\u2019histogramme de I<\/li>\n<li>Calculer l\u2019histogramme cumul\u00e9 de I<\/li>\n<li>Appliquer l\u2019\u00e9galisation de l\u2019histogramme dans chaque plan de l\u2019image couleur<\/li>\n<\/ul>\n<p><strong>Seuillage<\/strong><br \/>\nLe seuillage d&#8217;image est une technique de binarisation d&#8217;image, elle consiste \u00e0 transformer une image en niveau de gris en une image dont les valeurs de pixels ne peuvent avoir que la valeur 1 ou 0. On parle alors d&#8217;une image binaire ou image en noir et blanc.<br \/>\nSoit une image f de dimension N \u00d7 M. f ( i , j ), le seuillage d&#8217;images consiste \u00e0 fixer un seuil s \u00e0 partir duquel tout pixel ayant une intensit\u00e9 sup\u00e9rieure ou \u00e9gale au seuil s se voit attribuer la valeur 255 et le reste des pixels sera \u00e0 0. L&#8217;image binaire est obtenue par la formule suivante :<\/p>\n<span class=\"katex-eq\" data-katex-display=\"false\">\n\n\\begin{array}{l}\n\ng(i,j) =\\ \\ 255\\ si\\ f( i,j) \\geqslant s\\\\\n\ng(i,j) =0\\ sinon\n\n\\end{array}\n\n<\/span>\n<p>Exemple de seuillage avec differents seuils:<\/p>\n<pre class=\"brush: matlabkey; title: ; notranslate\" title=\"\">\r\nI=imread('Mona_Lisa-NG.jpg');\r\nBW1 = im2bw(I,70\/256);\r\nBW2= im2bw(I,123\/256);\r\nBW3 = im2bw(I,170\/256);\r\nlevel = graythresh(I);% seuil calcul\u00e9 avec la m\u00e9thode d'Otsu\r\nBW4 = im2bw(I,level); \r\nsubplot(1,5,1); imshow(I); title ( 'Image originale' ) ;\r\nsubplot(1,5,2); imshow(BW1); title ( 'im binaire, seuil=70') ;\r\nsubplot(1,5,3); imshow(BW2); title ( 'im binaire, seuil=123') ;\r\nsubplot(1,5,4); imshow(BW3); title ( 'im binaire, seuil=170') ;\r\nsubplot(1,5,5); imshow(BW4); title ( 'im binaire, seuil calcul\u00e9 avec Otsu' ) ;\r\n<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-382 size-full\" src=\"http:\/\/med-space.org\/youssef-zaz-master\/wp-content\/uploads\/2020\/12\/seuillage.jpg\" alt=\"\" width=\"1122\" height=\"279\" srcset=\"https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/seuillage.jpg 1122w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/seuillage-300x75.jpg 300w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/seuillage-1024x255.jpg 1024w, https:\/\/yzaz.net\/master\/wp-content\/uploads\/2020\/12\/seuillage-768x191.jpg 768w\" sizes=\"(max-width: 1122px) 100vw, 1122px\" \/><\/p>\n<p>&nbsp;<\/p>\n<hr \/>\n<p>(*): Caroline Rougier: Traitement d&#8217;images (IF2730); Univ. de Monterial)<\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"mh-excerpt\"><p>L\u2019histogramme d\u2019une image est la fonction qui associe \u00e0 chaque valeur d\u2019intensit\u00e9 le nombre de pixels dans l\u2019image ayant cette valeur. Image niveau de gris <a class=\"mh-excerpt-more\" href=\"https:\/\/yzaz.net\/master\/histogramme-et-applications\/\" title=\"Histogramme et applications\">[&#8230;]<\/a><\/p>\n<\/div>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":35,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"_links":{"self":[{"href":"https:\/\/yzaz.net\/master\/wp-json\/wp\/v2\/pages\/162"}],"collection":[{"href":"https:\/\/yzaz.net\/master\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/yzaz.net\/master\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/yzaz.net\/master\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/yzaz.net\/master\/wp-json\/wp\/v2\/comments?post=162"}],"version-history":[{"count":38,"href":"https:\/\/yzaz.net\/master\/wp-json\/wp\/v2\/pages\/162\/revisions"}],"predecessor-version":[{"id":384,"href":"https:\/\/yzaz.net\/master\/wp-json\/wp\/v2\/pages\/162\/revisions\/384"}],"wp:attachment":[{"href":"https:\/\/yzaz.net\/master\/wp-json\/wp\/v2\/media?parent=162"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}