{"id":28492,"date":"2022-05-05T08:40:23","date_gmt":"2022-05-05T08:40:23","guid":{"rendered":"http:\/\/blur-out-text-in-images-using-ocr-in-nuxt.js"},"modified":"2022-05-05T08:40:23","modified_gmt":"2022-05-05T08:40:23","slug":"blur-out-text-in-images-using-ocr-in-nuxt-js","status":"publish","type":"post","link":"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/","title":{"rendered":"Blur out Text in Images Using OCR in NuxtJS"},"content":{"rendered":"<div class=\"wp-block-cloudinary-markdown \"><h1>Blur out text in Images Using OCR in Nuxt.js.<\/h1>\n<p>Almost every web page contains images, many of which have text we don\u2019t always want to display. Optical character recognition (OCR) is a technology that helps extract text programmatically from images or other media.<\/p>\n<p><a href=\"https:\/\/cloudinary.com\/\">Cloudinary<\/a> is an image and video management solution with a built-in OCR feature that offers options such blurring out text on an image using URL parameters.<\/p>\n<h1>Sandbox<\/h1>\n<p>We completed this project in a <a href=\"https:\/\/codesandbox.io\/s\/boring-mendel-tordy0?file=\/pages\/index.vue\">CodeSandBox<\/a>. Fork and run it to quickly get started.<\/p>\n<\/div>\n  \n  <div class=\"wp-block-cloudinary-code-sandbox \">\n    <iframe\n      src=\"https:\/\/codesandbox.io\/embed\/boring-mendel-tordy0?theme=dark&amp;codemirror=1&amp;highlights=&amp;editorsize=50&amp;fontsize=14&amp;expanddevtools=0&amp;hidedevtools=0&amp;eslint=0&amp;forcerefresh=0&amp;hidenavigation=0&amp;initialpath=%2F&amp;module=&amp;moduleview=0&amp;previewwindow=&amp;view=&amp;runonclick=1\"\n      height=\"500\"\n      style=\"width: 100%;\"\n      title=\"Code Sandbox\"\n      loading=\"lazy\"\n      allow=\"accelerometer; ambient-light-sensor; camera; encrypted-media; geolocation; gyroscope; hid; microphone; midi; payment; usb; vr; xr-spatial-tracking\"\n      sandbox=\"allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts\"\n    ><\/iframe>\n  <\/div>\n\n  <div class=\"wp-block-cloudinary-markdown \"><h1>GitHub<\/h1>\n<p>Check out the complete source code here:<\/p>\n<p><a href=\"https:\/\/github.com\/shosenwales\/OCR-image\">https:\/\/github.com\/shosenwales\/OCR-image<\/a><\/p>\n<h1>Prerequisites<\/h1>\n<p>To follow along with this tutorial, the following is required:<\/p>\n<ul>\n<li>Basic understanding of Nuxt.js.<\/li>\n<li>A Cloudinary account \u2014 create a free account <a href=\"https:\/\/cloudinary.com\/users\/register\/free\">here<\/a>.<\/li>\n<\/ul>\n<h1>Project setup<\/h1>\n<p>We\u2019ll start by creating a new Nuxt project by running the following command:<\/p>\n<pre class=\"js-syntax-highlighted\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml shcb-wrap-lines\">npx create-nuxt-app <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">project-name<\/span>&gt;<\/span>\n\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n<p>After successfully creating a project, we need to navigate into the project directory and start our development server by running the following command:<\/p>\n<pre class=\"js-syntax-highlighted\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css shcb-wrap-lines\">  <span class=\"hljs-selector-tag\">cd<\/span> &lt;<span class=\"hljs-selector-tag\">project-name<\/span>&gt;  <span class=\"hljs-selector-id\">#changing<\/span> <span class=\"hljs-selector-tag\">directory<\/span>\n    <span class=\"hljs-selector-tag\">npm<\/span> <span class=\"hljs-selector-tag\">run<\/span> <span class=\"hljs-selector-tag\">dev<\/span>        <span class=\"hljs-selector-id\">#starting<\/span> <span class=\"hljs-selector-tag\">development<\/span> <span class=\"hljs-selector-tag\">server<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n<p>Nuxt.js will start a development environment, which can be accessed at <code>http:localhost:3000<\/code>.<\/p>\n<h1>Get image from Cloudinary<\/h1>\n<p>We will be using one of the images from the Cloudinary demo accounts for this project. Below is an image with text attached to it.<\/p>\n<p>The image shows a car with a registration number; we can find the image <a href=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/black_car.jpg\">here<\/a>.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/c_limit,w_2000\/f_auto\/q_auto\/media_jams\/s_02B7FA47AE152C0588BAC02CC636E1C90592A8717F03F3C2CE7F515587A29907_1649413025001_black_car.jpg\" alt=\"Black Car\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"1920\" height=\"1440\"\/><\/p>\n<h2>Blurring out text<\/h2>\n<p>To blur out the text on our image, we\u2019ll use the Cloudinary URL parameters <code>e_pixelate_region:20,g_ocr_text<\/code>. These parameters are placed in between the <code>upload\/<\/code> and <code>\/image_name.jpg<\/code> path, as shown below:<\/p>\n<pre class=\"js-syntax-highlighted\"><code>    url: &quot;https:\/\/res.cloudinary.com\/demo\/image\/upload\/e_pixelate_region:20,g_ocr_text\/black_car.jpg&quot;\n<\/code><\/pre>\n<p>Let\u2019s take a closer look at the URL.<\/p>\n<ul>\n<li>\n<code>e_pixelate<\/code> creates a pixel effect for the whole image.<\/li>\n<li>Adding <code>_region:20<\/code> to <code>e_pixelate<\/code> helps specify the region and value on the image.<\/li>\n<li>\n<code>g_ocr_text<\/code> detects text on images.<\/li>\n<li>All togtether, these parameters will blur out the text detected on the image by pixelating the area in which the text is located.<\/li>\n<\/ul>\n<p><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/c_limit,w_2000\/f_auto\/q_auto\/media_jams\/s_02B7FA47AE152C0588BAC02CC636E1C90592A8717F03F3C2CE7F515587A29907_1649415106018_blurred.jpg\" alt=\"Black car with a blurred registration number\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"1920\" height=\"1440\"\/><\/p>\n<p>Cloudinary also allows us to customize the square pixel size and make them bigger:<\/p>\n<pre><code>c_fill,e_pixelate_region:30,h_80,w_200,x_170,y_260\n<\/code><\/pre>\n<pre class=\"js-syntax-highlighted\"><code>    url: &quot;https:\/\/res.cloudinary.com\/demo\/image\/upload\/c_fill,e_pixelate_region:30,h_80,w_200,x_170,y_260,g_ocr_text\/black_car.jpg&quot;\n<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/c_limit,w_2000\/f_auto\/q_auto\/media_jams\/s_02B7FA47AE152C0588BAC02CC636E1C90592A8717F03F3C2CE7F515587A29907_1649415559312_black_car+1.jpg\" alt=\"\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"1920\" height=\"1440\"\/><\/p>\n<h2>Adding the image to Nuxt.js<\/h2>\n<p>In our <code>index.vue<\/code> file, let\u2019s create an array to store the image URLs by adding the following code snippet.<\/p>\n<pre class=\"js-syntax-highlighted\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml shcb-wrap-lines\">\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">script<\/span>&gt;<\/span><span class=\"javascript\">\n    <span class=\"hljs-keyword\">export<\/span> <span class=\"hljs-keyword\">default<\/span> {\n      data(){\n        <span class=\"hljs-keyword\">return<\/span>{\n          <span class=\"hljs-attr\">images<\/span>: &#91;\n            {\n              <span class=\"hljs-attr\">id<\/span>: <span class=\"hljs-number\">1<\/span>,\n              <span class=\"hljs-attr\">name<\/span>: <span class=\"hljs-string\">'car with registeration number'<\/span>,\n              <span class=\"hljs-attr\">url<\/span>: <span class=\"hljs-string\">'https:\/\/res.cloudinary.com\/demo\/image\/upload\/black_car.jpg'<\/span>,\n            },\n            {\n              <span class=\"hljs-attr\">id<\/span>: <span class=\"hljs-number\">2<\/span>,\n              <span class=\"hljs-attr\">name<\/span>: <span class=\"hljs-string\">'car with blurred registeration number'<\/span>,\n              <span class=\"hljs-attr\">url<\/span>: <span class=\"hljs-string\">'https:\/\/res.cloudinary.com\/demo\/image\/upload\/e_pixelate_region:20,g_ocr_text\/black_car.jpg'<\/span>,\n          },\n          ]\n        }\n      }\n    }\n    <\/span><span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">script<\/span>&gt;<\/span>\n\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n<p><code>name<\/code> is used in the code snippet above to describe the image;  <code>url<\/code> is the link to the original and blurred image.<\/p>\n<p>Next, we add the following code snippet to our <code>index.vue<\/code> file to display the images.<\/p>\n<pre class=\"js-syntax-highlighted\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml shcb-wrap-lines\">    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">template<\/span>&gt;<\/span>\n      <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">div<\/span>&gt;<\/span>\n        <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">h1<\/span>&gt;<\/span>OCR IMAGE<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">h1<\/span>&gt;<\/span>\n        <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">div<\/span> <span class=\"hljs-attr\">v-for<\/span>=<span class=\"hljs-string\">\"image in images\"<\/span> <span class=\"hljs-attr\">:key<\/span>=<span class=\"hljs-string\">\"image.id\"<\/span>&gt;<\/span>\n          <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">h2<\/span>&gt;<\/span>{{image.name}}<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">h2<\/span>&gt;<\/span>\n          <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">img<\/span> <span class=\"hljs-attr\">:src<\/span>=<span class=\"hljs-string\">\"image.url\"<\/span> <span class=\"hljs-attr\">alt<\/span>=<span class=\"hljs-string\">\"image of a black car\"<\/span> <span class=\"hljs-attr\">width<\/span>=<span class=\"hljs-string\">\"400\"<\/span> <span class=\"hljs-attr\">height<\/span>=<span class=\"hljs-string\">\"200\"<\/span>&gt;<\/span>\n        <span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">div<\/span>&gt;<\/span>\n      <span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">div<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">template<\/span>&gt;<\/span>\n\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n<p>Now, our <code>index.vue<\/code> file should be similar to this.<\/p>\n<pre class=\"js-syntax-highlighted\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml shcb-wrap-lines\">    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">template<\/span>&gt;<\/span>\n      <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">div<\/span>&gt;<\/span>\n        <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">h1<\/span>&gt;<\/span>OCR IMAGE<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">h1<\/span>&gt;<\/span>\n        <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">div<\/span> <span class=\"hljs-attr\">v-for<\/span>=<span class=\"hljs-string\">\"image in images\"<\/span> <span class=\"hljs-attr\">:key<\/span>=<span class=\"hljs-string\">\"image.id\"<\/span>&gt;<\/span>\n          <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">h2<\/span>&gt;<\/span>{{image.name}}<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">h2<\/span>&gt;<\/span>\n          <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">img<\/span> <span class=\"hljs-attr\">:src<\/span>=<span class=\"hljs-string\">\"image.url\"<\/span> <span class=\"hljs-attr\">alt<\/span>=<span class=\"hljs-string\">\"image of a black car\"<\/span> <span class=\"hljs-attr\">width<\/span>=<span class=\"hljs-string\">\"400\"<\/span> <span class=\"hljs-attr\">height<\/span>=<span class=\"hljs-string\">\"200\"<\/span>&gt;<\/span>\n        <span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">div<\/span>&gt;<\/span>\n      <span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">div<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">template<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">script<\/span>&gt;<\/span><span class=\"javascript\">\n    <span class=\"hljs-keyword\">export<\/span> <span class=\"hljs-keyword\">default<\/span> {\n      data(){\n        <span class=\"hljs-keyword\">return<\/span>{\n          <span class=\"hljs-attr\">images<\/span>: &#91;\n            {\n              <span class=\"hljs-attr\">id<\/span>: <span class=\"hljs-number\">1<\/span>,\n              <span class=\"hljs-attr\">name<\/span>: <span class=\"hljs-string\">'car with registeration number'<\/span>,\n              <span class=\"hljs-attr\">url<\/span>: <span class=\"hljs-string\">'https:\/\/res.cloudinary.com\/demo\/image\/upload\/black_car.jpg'<\/span>,\n            },\n            {\n              <span class=\"hljs-attr\">id<\/span>: <span class=\"hljs-number\">2<\/span>,\n              <span class=\"hljs-attr\">name<\/span>: <span class=\"hljs-string\">'car with blurred registeration number'<\/span>,\n              <span class=\"hljs-attr\">url<\/span>: <span class=\"hljs-string\">'https:\/\/res.cloudinary.com\/demo\/image\/upload\/e_pixelate_region:20,g_ocr_text\/black_car.jpg'<\/span>,\n          },\n          ]\n        }\n      }\n    }\n    <\/span><span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">script<\/span>&gt;<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n<p>Let\u2019s open our browser, and we should have two images: one with a clear registration number and one with a blurred registration number.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/cloudinary-marketing-res.cloudinary.com\/image\/upload\/c_limit,w_2000\/f_auto\/q_auto\/media_jams\/s_02B7FA47AE152C0588BAC02CC636E1C90592A8717F03F3C2CE7F515587A29907_1649445803664_ocr_web.png\" alt=\"\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"527\" height=\"640\"\/><\/p>\n<h2>Conclusion<\/h2>\n<p>This post discussed how to blur our text in an image using OCR in Nuxt.js.<\/p>\n<h2>Resources<\/h2>\n<ul>\n<li>\n<a href=\"https:\/\/cloudinary.com\/blog\/how_to_automatically_blur_pixelate_and_process_detected_text_in_your_images\">How to use OCR Text Recognition to automatically transform images<\/a>\n<\/li>\n<li>\n<a href=\"https:\/\/cloudinary.com\/documentation\/ocr_text_detection_and_extraction_addon#blurring_or_pixelating_detected_text\">OCR Text Detection and Extraction<\/a>\n<\/li>\n<\/ul>\n<\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"author":41,"featured_media":28493,"comment_status":"","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_cloudinary_featured_overwrite":false,"footnotes":""},"categories":[1],"tags":[134,370,177,212,371,315],"class_list":["post-28492","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-guest-post","tag-image","tag-javascript","tag-next-js","tag-under-review","tag-vue"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.6 (Yoast SEO v26.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Blur out Text in Images Using OCR in NuxtJS<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Blur out Text in Images Using OCR in NuxtJS\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/\" \/>\n<meta property=\"og:site_name\" content=\"Cloudinary Blog\" \/>\n<meta property=\"article:published_time\" content=\"2022-05-05T08:40:23+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"NewsArticle\",\"@id\":\"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/\"},\"author\":{\"name\":\"\",\"@id\":\"\"},\"headline\":\"Blur out Text in Images Using OCR in NuxtJS\",\"datePublished\":\"2022-05-05T08:40:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/\"},\"wordCount\":9,\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1681928521\/Web_Assets\/blog\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9.jpg?_i=AA\",\"keywords\":[\"Guest Post\",\"Image\",\"Javascript\",\"Next.js\",\"Under Review\",\"Vue\"],\"inLanguage\":\"en-US\",\"copyrightYear\":\"2022\",\"copyrightHolder\":{\"@id\":\"https:\/\/cloudinary.com\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/\",\"url\":\"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/\",\"name\":\"Blur out Text in Images Using OCR in NuxtJS\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1681928521\/Web_Assets\/blog\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9.jpg?_i=AA\",\"datePublished\":\"2022-05-05T08:40:23+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/#primaryimage\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1681928521\/Web_Assets\/blog\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9.jpg?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1681928521\/Web_Assets\/blog\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9.jpg?_i=AA\",\"width\":3922,\"height\":2635},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cloudinary.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blur out Text in Images Using OCR in NuxtJS\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"name\":\"Cloudinary Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cloudinary.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\",\"name\":\"Cloudinary Blog\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"width\":312,\"height\":60,\"caption\":\"Cloudinary Blog\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Blur out Text in Images Using OCR in NuxtJS","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/","og_locale":"en_US","og_type":"article","og_title":"Blur out Text in Images Using OCR in NuxtJS","og_url":"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/","og_site_name":"Cloudinary Blog","article_published_time":"2022-05-05T08:40:23+00:00","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/#article","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/"},"author":{"name":"","@id":""},"headline":"Blur out Text in Images Using OCR in NuxtJS","datePublished":"2022-05-05T08:40:23+00:00","mainEntityOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/"},"wordCount":9,"publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1681928521\/Web_Assets\/blog\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9.jpg?_i=AA","keywords":["Guest Post","Image","Javascript","Next.js","Under Review","Vue"],"inLanguage":"en-US","copyrightYear":"2022","copyrightHolder":{"@id":"https:\/\/cloudinary.com\/#organization"}},{"@type":"WebPage","@id":"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/","url":"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/","name":"Blur out Text in Images Using OCR in NuxtJS","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/#primaryimage"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1681928521\/Web_Assets\/blog\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9.jpg?_i=AA","datePublished":"2022-05-05T08:40:23+00:00","breadcrumb":{"@id":"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/#primaryimage","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1681928521\/Web_Assets\/blog\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9.jpg?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1681928521\/Web_Assets\/blog\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9.jpg?_i=AA","width":3922,"height":2635},{"@type":"BreadcrumbList","@id":"https:\/\/cloudinary.com\/blog\/guest_post\/blur-out-text-in-images-using-ocr-in-nuxt-js\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudinary.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Blur out Text in Images Using OCR in NuxtJS"}]},{"@type":"WebSite","@id":"https:\/\/cloudinary.com\/blog\/#website","url":"https:\/\/cloudinary.com\/blog\/","name":"Cloudinary Blog","description":"","publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cloudinary.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/cloudinary.com\/blog\/#organization","name":"Cloudinary Blog","url":"https:\/\/cloudinary.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","width":312,"height":60,"caption":"Cloudinary Blog"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":""}]}},"jetpack_featured_media_url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1681928521\/Web_Assets\/blog\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9\/3a18898e6db936573318106c7ee782532e95002a-3922x2635-1_28493c2dc9.jpg?_i=AA","_links":{"self":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/28492","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/users\/41"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/comments?post=28492"}],"version-history":[{"count":0,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/28492\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media\/28493"}],"wp:attachment":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media?parent=28492"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/categories?post=28492"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/tags?post=28492"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}