【发布时间】:2017-01-29 15:45:38
【问题描述】:
我正在开发一个应用程序来检测纸币的“损坏量”。
该应用程序将评估用户的输入图像,并确认他们是否有权更换笔记。
输出为:if 30% of lost of money object, can allow changing at the bank。
我有想法,我们用钱的相机进行捕捉,损坏的背景是白色的,所以在 AS3 中可以计算白色的百分比。如果低于 30%,那么可以在银行进行更改。
关于如何计算图像中白色百分比的任何想法(计算)?谢谢。
-- 编辑--
我有代码@VC.One,你可以更正一下吗?谢谢。
导入flash.media.Camera; 导入 flash.media.Video; 导入 flash.display.BitmapData; 导入 flash.display.Bitmap; 导入 flash.display.Sprite; 导入 flash.events.MouseEvent; 导入 flash.text.TextField; var camMoney: Camera = Camera.getCamera(); camMoney.setQuality(0, 100); camMoney.setMode(480, 300, 30, true); var vidMoney: 视频 = 新视频 (480, 300) vidMoney.x = 0; vidMoney.y = 10; addChild(vidMoney); vidMoney.attachCamera(camMoney); var moneyBD: BitmapData = new BitmapData(vidMoney.width, vidMoney.height); var moneyBM: 位图 = 新位图(moneyBD); 钱BM.x = 0; 金钱BM.y = 376; addChild(moneyBM); var circle: Sprite = new Sprite(); circle.graphics.lineStyle(2, 0xFFFFFF); circle.graphics.beginFill(0x000000); circle.graphics.drawCircle(225, 340, 20); circle.graphics.endFill(); addChild(圈子); circle.buttonMode = true; circle.addEventListener(MouseEvent.CLICK,捕获); 函数捕获(e:MouseEvent):无效{ moneyBD.draw(vidMoney); } var circleRect: Sprite = new Sprite(); circleRect.graphics.lineStyle(2, 0xFFFFFF); circleRect.graphics.beginFill(0xFF0000); circleRect.graphics.drawRoundRect(260, 320, 60, 40, 30); circleRect.graphics.endFill(); addChild(circleRect); circleRect.buttonMode = true; circleRect.addEventListener(MouseEvent.CLICK, analisa); 函数分析(e:MouseEvent):无效{ 变量 xi: 整数; var yi: int; var 像素:uint; 变量颜色:uint; var pointsWhite: 数组 = []; 对于(xi = 0;xi = 2){ var lengthOfWhiteSpace: int = pointGroup[pointGroup.length - 1].x - pointGroup[0].x; var t: TextField = new TextField(); t.x = 点组[0].x; t.y = 点组[0].y; addChild(t); } }【问题讨论】:
-
感谢@Jezzamon。我现在试试。
-
您以前使用过像素吗?在该 Bitmpdata API 链接中,您可能想要检查
histogram甚至只是使用getPixel(它告诉您来自测试像素位置的颜色)。使用For循环扫描每个像素并测试它是否匹配白色 (0xFFFFF),所以逻辑如下:if white == myBMPdata.getPixel( i, j ) then { so add +1 to totalWhitePixels };。扫描完成后,比较您的图像总像素与白色总像素,使用数学计算百分比。 -
感谢@VC.One 的编辑和回答。我现在在工作。感谢您提供出色的解决方案
-
@VC.One 你能纠正我的 AS3:
标签: actionscript-3 image-processing computer-vision