我正在浏览一些朋友在 Orkut 上上传的照片 [Orkut 有这个新功能可以告诉您照片中有多少未命名的人]。有一张特别的照片,里面有一张广告海报,上面有一张人的照片。Orkut 显示照片中有两个未透露姓名的人。出于好奇,我只是想知道是否可以识别照片中有照片?如果没有,你能想出一种方法来帮助应用程序识别照片中的照片吗?
8 回答
我会说这是一个难题。
照片中的人和透过窗框看的人有什么区别?
该软件必须在照片中寻找照明差异和透视差异,但即使这也可能是由于照片中的实际动态,例如场外灯光或镜子。
我的猜测是,任何解决方案都只会在某些时候起作用。只是我的2美分。
您也许可以创建一个神经网络来识别图像中包含的“照片”。
一个快速的谷歌搜索想出了这篇关于使用神经网络进行图像识别的代码项目文章,以防你想编码它;)
编辑
您可以将此 NN 与您计划在照片中识别人物的任何方式结合使用。如果“照片”与一个人重叠,则该人在照片中。
似乎是这样,尽管我不知道有什么具体的技术可以做到这一点。即兴发挥,判断一般场景的一种简单方法是查看图片的亮度梯度。如果有明显的边缘,它可能是一个并不真正属于场景其余部分的图像。
你可以直观地想象一下这是如何工作的:照射到场景中的灯光将来自场景中的灯光,但场景中照片的灯光在拍照时已经设置好了。因此它可能会与场景中的照明发生冲突,瞧,你有一个可以识别的差异。
然而,专门识别一张照片(而不是广告牌、卡车上的标志、电视等)似乎肯定是一个挑战。
任何出现在照片内的照片中的物体都会有错误的阴影。假设您确定它是一张脸,您可以构建一个 3D 模型。如果你有一个图片的一部分,内接在一个矩形中,它没有图片其余部分的阴影,它就是图片中的图片。
我很确定,如果存在任何解决方案,那么背后的人会使用它。
http://www.boingboing.net/2008/06/29/japanese-cigmachines.html
如果你有一张照片,里面有 2 个人,无论他们都是真实的还是海报中的一个,那么如果之前都没有命名,那么你不是有 2 个未命名的人吗?
在这种情况下,只要可以将发布者识别为一个人,那么确实有 2 个身份不明的人“有问题的照片”。对?
请记住,照片是一个实体,而不是实体的集合,具有不同的规则。
关于海报的一个方便的选择是检查每个人的光泽度;海报通常比图像的其他部分更有光泽。
是的,你可以,通过使用 OpenCV 和一些算法,如 SIFT 或 BRISK 等。还有其他方法。SIFT 是非免费的。