برنامه نویسی

استخراج مقادیر RGBA یک تصویر

در اینجا ما از jimp استفاده خواهیم کرد که یک کتابخانه پردازش تصویر است
و ماژول fs در Node برای استخراج و نوشتن مقادیر در یک فایل متنی

نیاز به ماژول های مورد نیاز برای استخراج و ذخیره مقادیر
const fs = require("fs");
const { Buffer } = require("buffer");
const jimp = require("jimp");

شما می توانید jimp را به صورت زیر نصب کنید

npm install jimp
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

پس از آن باید تصویری را بخوانید که می خواهید مقادیر rgba را استخراج کنید

در اینجا تصویر من با kick.jpeg نامگذاری شده است.

jimp.read("kick.jpeg").then((image) => {
  myarray = [];
  for (let i = 0; i < image.bitmap.height; i++) {
    for (let j = 0; j < image.bitmap.width; j++) {
      myarray.push([jimp.intToRGBA(image.getPixelColour(i, j))]);
    }
  }
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

اجازه می دهد به کد شیرجه بزنیم
jimp.read بعد از اینکه بتوانید روش های زیادی را اعمال کنید، یک وعده را برمی گرداند

در اینجا ما در هر پیکسل تکرار می کنیم و rgba را با استفاده از intToRGBA محاسبه می کنیم و آن را به آرایه فشار می دهیم.

fs.createWriteStream("rgbavalues.txt").write(JSON.stringify(myarray));

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

پس از نوشتن مقادیر در فایلی به نام rgbvalues.txt
در اینجا کل کد برای شما وجود دارد، ما از استریم ها استفاده خواهیم کرد زیرا محتوای فایل ممکن است بزرگ باشد

const fs = require("fs");
const { Buffer } = require("buffer");
const jimp = require("jimp");
jimp.read("kick.jpeg").then((image) => {
  myarray = [];
  for (let i = 0; i < image.bitmap.height; i++) {
    for (let j = 0; j < image.bitmap.width; j++) {
      myarray.push([jimp.intToRGBA(image.getPixelColour(i, j))]);
    }
  }

  fs.createWriteStream("rgbavalues.txt").write(JSON.stringify(myarray));
});
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

از همه برای امروز تشکر می کنم
اینجا توله سگ برای شماست

توضیحات تصویر

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا