UNPKG

ojos

Version:

High level API on top of Mirada (opencv.js) supporting bth browser and node.

57 lines 2.5 kB
"use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return extendStatics(d, b); }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); var __spreadArrays = (this && this.__spreadArrays) || function () { for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length; for (var r = Array(s), k = 0, i = 0; i < il; i++) for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) r[k] = a[j]; return r; }; Object.defineProperty(exports, "__esModule", { value: true }); var mirada_1 = require("mirada"); var abstractOperation_1 = require("./abstractOperation"); /** * Will replace pixels within given boundaries with given color or image's pixels */ var ReplaceColor = /** @class */ (function (_super) { __extends(ReplaceColor, _super); function ReplaceColor() { var _this = _super !== null && _super.apply(this, arguments) || this; _this.name = "ReplaceColor"; _this.description = "Will replace pixels within given boundaries with given color or image's pixels"; return _this; } ReplaceColor.prototype._exec = function (o) { o.dst = o.dst || new cv.Mat(); var low = new cv.Mat(o.src.rows, o.src.cols, o.src.type(), o.lowColor); var high = new cv.Mat(o.src.rows, o.src.cols, o.src.type(), o.highColor); var mask = new cv.Mat(); cv.inRange(o.src, low, high, mask); var b = mirada_1.isMat(o.newColorOrImage) ? o.newColorOrImage : new cv.Mat(o.src.rows, o.src.cols, o.src.type(), o.newColorOrImage); if (o.removeRest) { var aux = new cv.Mat(); aux.copyTo(o.dst); aux.delete(); } else { o.src.copyTo(o.dst); } b.copyTo(o.dst, mask); mirada_1.del.apply(void 0, __spreadArrays([mask, low, high], mirada_1.isMat(o.newColorOrImage) ? [] : [b])); }; return ReplaceColor; }(abstractOperation_1.AbstractOperation)); exports.ReplaceColor = ReplaceColor; //# sourceMappingURL=replaceColor.js.map