You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3 lines
62 KiB
JavaScript
3 lines
62 KiB
JavaScript
![]()
11 years ago
|
/*! quagga 2014-11-01 */
|
||
|
!function(a,b){"function"==typeof define&&define.amd?define([],b):a.Quagga=b()}(this,function(){var a,b,c;!function(d){function e(a,b){return u.call(a,b)}function f(a,b){var c,d,e,f,g,h,i,j,k,l,m,n=b&&b.split("/"),o=s.map,p=o&&o["*"]||{};if(a&&"."===a.charAt(0))if(b){for(n=n.slice(0,n.length-1),a=a.split("/"),g=a.length-1,s.nodeIdCompat&&w.test(a[g])&&(a[g]=a[g].replace(w,"")),a=n.concat(a),k=0;k<a.length;k+=1)if(m=a[k],"."===m)a.splice(k,1),k-=1;else if(".."===m){if(1===k&&(".."===a[2]||".."===a[0]))break;k>0&&(a.splice(k-1,2),k-=2)}a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((n||p)&&o){for(c=a.split("/"),k=c.length;k>0;k-=1){if(d=c.slice(0,k).join("/"),n)for(l=n.length;l>0;l-=1)if(e=o[n.slice(0,l).join("/")],e&&(e=e[d])){f=e,h=k;break}if(f)break;!i&&p&&p[d]&&(i=p[d],j=k)}!f&&i&&(f=i,h=j),f&&(c.splice(0,h,f),a=c.join("/"))}return a}function g(a,b){return function(){return n.apply(d,v.call(arguments,0).concat([a,b]))}}function h(a){return function(b){return f(b,a)}}function i(a){return function(b){q[a]=b}}function j(a){if(e(r,a)){var b=r[a];delete r[a],t[a]=!0,m.apply(d,b)}if(!e(q,a)&&!e(t,a))throw new Error("No "+a);return q[a]}function k(a){var b,c=a?a.indexOf("!"):-1;return c>-1&&(b=a.substring(0,c),a=a.substring(c+1,a.length)),[b,a]}function l(a){return function(){return s&&s.config&&s.config[a]||{}}}var m,n,o,p,q={},r={},s={},t={},u=Object.prototype.hasOwnProperty,v=[].slice,w=/\.js$/;o=function(a,b){var c,d=k(a),e=d[0];return a=d[1],e&&(e=f(e,b),c=j(e)),e?a=c&&c.normalize?c.normalize(a,h(b)):f(a,b):(a=f(a,b),d=k(a),e=d[0],a=d[1],e&&(c=j(e))),{f:e?e+"!"+a:a,n:a,pr:e,p:c}},p={require:function(a){return g(a)},exports:function(a){var b=q[a];return"undefined"!=typeof b?b:q[a]={}},module:function(a){return{id:a,uri:"",exports:q[a],config:l(a)}}},m=function(a,b,c,f){var h,k,l,m,n,s,u=[],v=typeof c;if(f=f||a,"undefined"===v||"function"===v){for(b=!b.length&&c.length?["require","exports","module"]:b,n=0;n<b.length;n+=1)if(m=o(b[n],f),k=m.f,"require"===k)u[n]=p.require(a);else if("exports"===k)u[n]=p.exports(a),s=!0;else if("module"===k)h=u[n]=p.module(a);else if(e(q,k)||e(r,k)||e(t,k))u[n]=j(k);else{if(!m.p)throw new Error(a+" missing "+k);m.p.load(m.n,g(f,!0),i(k),{}),u[n]=q[k]}l=c?c.apply(q[a],u):void 0,a&&(h&&h.exports!==d&&h.exports!==q[a]?q[a]=h.exports:l===d&&s||(q[a]=l))}else a&&(q[a]=c)},a=b=n=function(a,b,c,e,f){if("string"==typeof a)return p[a]?p[a](b):j(o(a,b).f);if(!a.splice){if(s=a,s.deps&&n(s.deps,s.callback),!b)return;b.splice?(a=b,b=c,c=null):a=d}return b=b||function(){},"function"==typeof c&&(c=e,e=f),e?m(d,a,b,c):setTimeout(function(){m(d,a,b,c)},4),n},n.config=function(a){return n(a)},a._defined=q,c=function(a,b,c){b.splice||(c=b,b=[]),e(q,a)||e(r,a)||(r[a]=[a,b,c])},c.amd={jQuery:!0}}(),c("almond",function(){}),c("barcode_reader",[],function(){function a(){return this._row=[],this}return a.prototype._nextUnset=function(a,b){var c;for(void 0===b&&(b=0),c=b;c<a.length;c++)if(!a[c])return c;return a.length},a.prototype._matchPattern=function(a,b){var c,d=0;for(c=0;c<a.length;c++)d+=Math.abs(b[c]-a[c]);return d},a.prototype._nextSet=function(a){var b;for(b=0;b<a.length;b++)if(a[b])return b;return a.length},a.prototype._normalize=function(a,b){var c,d,e=this,f=0,g=0,h=[],i=0;for(b||(b=e.MODULO),c=0;c<a.length;c++)1===a[c]?g++:f+=a[c];for(d=f/(b-g),c=0;c<a.length;c++)i=1===a[c]?a[c]:a[c]/d,h.push(i);return h},a.prototype._matchTrace=function(a,b){var c,d,e=[],f=this,g=f._nextSet(f._row),h=!f._row[g],i=0,j={error:Number.MAX_VALUE,code:-1,start:0};if(a){for(c=0;c<a.length;c++)e.push(0);for(c=g;c<f._row.length;c++)if(f._row[c]^h)e[i]++;else{if(i===e.length-1)return d=f._matchPattern(e,a),b>d?(j.start=c-g,j.end=c,j.counter=e,j):null;i++,e[i]=1,h=!h}}else for(e.push(0),c=g;c<f._row.length;c++)f._row[c]^h?e[i]++:(i++,e.push(0),e[i]=1,h=!h);return j.start=g,j.end=f._row.length-1,j.counter=e,j},a.prototype.decodePattern=function(b){var c,d=this;return d._row=b,c=d._decode(),null===c?(d._row.reverse(),c=d._decode(),c&&(c.direction=a.DIRECTION.REVERSE,c.start=d._row.length-c.start,c.end=d._row.length-
|
||
|
},i.unproject=function(a){return d.create([a[0],a[1],1])},i.length=function(a){return Math.sqrt(a[0]*a[0]+a[1]*a[1])},i.perspectiveProject=function(a){var b=i.create(a);return i.scale(b,1/a[2])},d.project=function(a){return i.scale(i.create(a),1/a[2])};var j={};j.scale=function(a,b,c){return c&&a!=c?(c[0]=a[0]*b,c[1]=a[1]*b,c[2]=a[2]*b,c[3]=a[3]*b,c[4]=a[4]*b,c[5]=a[5]*b,c):(a[0]*=b,a[1]*=b,a[2]*=b,a[3]*=b,a[4]*=b,a[5]*=b,a)},j.subtract=function(a,b,c){return c&&a!=c?(c[0]=a[0]-b[0],c[1]=a[1]-b[1],c[2]=a[2]-b[2],c[3]=a[3]-b[3],c[4]=a[4]-b[4],c[5]=a[5]-b[5],c):(a[0]-=b[0],a[1]-=b[1],a[2]-=b[2],a[3]-=b[3],a[4]-=b[4],a[5]-=b[5],a)},j.dot=function(a,b){return a[0]*b[0]+a[1]*b[1]+a[2]*b[2]+a[3]*b[3]+a[4]*b[4]+a[5]*b[5]};var k={};return k.xVec6=function(a,b,c){c||(c=b);var d=b[0],e=b[1],f=b[2],g=b[3],h=b[4],i=b[5];return c[0]=a[0]*d+a[1]*e+a[2]*f+a[3]*g+a[4]*h+a[5]*i,c[1]=a[6]*d+a[7]*e+a[8]*f+a[9]*g+a[10]*h+a[11]*i,c[2]=a[12]*d+a[13]*e+a[14]*f+a[15]*g+a[16]*h+a[17]*i,c[3]=a[18]*d+a[19]*e+a[20]*f+a[21]*g+a[22]*h+a[23]*i,c[4]=a[24]*d+a[25]*e+a[26]*f+a[27]*g+a[28]*h+a[29]*i,c[5]=a[30]*d+a[31]*e+a[32]*f+a[33]*g+a[34]*h+a[35]*i,c},e.xVec3=function(a,b,c){c||(c=b);var d=b[0],e=b[1],f=b[2];return c[0]=a[0]*d+a[1]*e+a[2]*f,c[1]=a[3]*d+a[4]*e+a[5]*f,c[2]=a[6]*d+a[7]*e+a[8]*f,c},c("glMatrixAddon",["glMatrix"],function(a){return function(){var b;return b||a.glMatrixAddon}}(this)),c("array_helper",[],function(){return{init:function(a,b){for(var c=a.length;c--;)a[c]=b},shuffle:function(a){var b,c,d=a.length-1;for(d;d>=0;d--)b=Math.floor(Math.random()*d),c=a[d],a[d]=a[b],a[b]=c;return a},toPointList:function(a){var b,c,d=[],e=[];for(b=0;b<a.length;b++){for(d=[],c=0;c<a[b].length;c++)d[c]=a[b][c];e[b]="["+d.join(",")+"]"}return"["+e.join(",\r\n")+"]"},threshold:function(a,b,c){var d,e=[];for(d=0;d<a.length;d++)c.apply(a,[a[d]])>=b&&e.push(a[d]);return e},maxIndex:function(a){var b,c=0;for(b=0;b<a.length;b++)a[b]>a[c]&&(c=b);return c},max:function(a){var b,c=0;for(b=0;b<a.length;b++)a[b]>c&&(c=a[b]);return c}}}),c("cv_utils",["cluster","glMatrixAddon","array_helper"],function(a,b,c){var e={};return e.imageRef=function(a,b){var c={x:a,y:b,toVec2:function(){return i.create([this.x,this.y])},toVec3:function(){return d.create([this.x,this.y,1])},round:function(){return this.x=Math.floor(this.x>0?this.x+.5:this.x-.5),this.y=Math.floor(this.y>0?this.y+.5:this.y-.5),this}};return c},e.computeIntegralImage2=function(a,b){var c,d,e=a.data,f=a.size.x,g=a.size.y,h=b.data,i=0,j=0,k=0,l=0,m=0;for(k=f,i=0,d=1;g>d;d++)i+=e[j],h[k]+=i,j+=f,k+=f;for(j=0,k=1,i=0,c=1;f>c;c++)i+=e[j],h[k]+=i,j++,k++;for(d=1;g>d;d++)for(j=d*f+1,k=(d-1)*f+1,l=d*f,m=(d-1)*f,c=1;f>c;c++)h[j]+=e[j]+h[k]+h[l]-h[m],j++,k++,l++,m++},e.computeIntegralImage=function(a,b){for(var c=a.data,d=a.size.x,e=a.size.y,f=b.data,g=0,h=0;d>h;h++)g+=c[h],f[h]=g;for(var i=1;e>i;i++){g=0;for(var j=0;d>j;j++)g+=c[i*d+j],f[i*d+j]=g+f[(i-1)*d+j]}},e.thresholdImage=function(a,b,c){c||(c=a);for(var d=a.data,e=d.length,f=c.data;e--;)f[e]=d[e]<b?0:1},e.computeHistogram=function(a){var b,c=a.data,d=c.length,e=new Int32Array(256);for(b=0;256>b;b++)e[b]=0;for(;d--;)e[c[d]]++;return e},e.otsuThreshold=function(a,b){function d(a,b){var c,d=0;for(c=a;b>=c;c++)d+=h[c];return d}function f(a,b){var c,d=0;for(c=a;b>=c;c++)d+=c*h[c];return d}function g(){var b,g,i,j,k,l,m,n=[0];for(h=e.computeHistogram(a),j=1;255>j;j++)b=d(0,j),g=d(j+1,255),i=b*g,0===i&&(i=1),k=f(0,j)*g,l=f(j+1,255)*b,m=k-l,n[j]=m*m/i;return c.maxIndex(n)}var h,i;return i=g(),e.thresholdImage(a,i,b),i},e.computeBinaryImage=function(a,b,c){e.computeIntegralImage(a,b),c||(c=a);var d,f,g,h,i,j,k,l=a.data,m=c.data,n=a.size.x,o=a.size.y,p=b.data,q=0,r=3,s=(2*r+1)*(2*r+1);for(d=0;r>=d;d++)for(f=0;n>f;f++)m[d*n+f]=0,m[(o-1-d)*n+f]=0;for(d=r;o-r>d;d++)for(f=0;r>=f;f++)m[d*n+f]=0,m[d*n+(n-1-f)]=0;for(d=r+1;o-r-1>d;d++)for(f=r+1;n-r>f;f++)g=p[(d-r-1)*n+(f-r-1)],h=p[(d-r-1)*n+(f+r)],i=p[(d+r)*n+(f-r-1)],j=p[(d+r)*n+(f+r)],q=j-i-h+g,k=q/s,m[d*n+f]=l[d*n+f]>k+5?0:1},e.cluster=function(b,c,d){function e(a){var b=!1;for(g=0;g<j.length;g++)h=j[g],h.fits(a)&&(h.add(a),b
|