设为首页收藏本站官方微博

【汉化任务简报】#27 图片交集像素抽出程序

[复制链接]
查看: 2981|回复: 16
打印 上一主题 下一主题

【汉化任务简报】#27 图片交集像素抽出程序

跳转到指定楼层
楼主
发表于 2009-6-2 11:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

【汉化任务简报】#27 图片交集像素抽出程序

现在假设有100张BMP图片,这些图片宽高互相之间都彼此相同,当然每张的宽和高都不一样。
0 H) D5 I, A+ J7 C; d* z7 w图片的背景都不同,但是上面都用一种颜色写着一个汉字,比如是黄色。
/ j, w; H" e+ Y7 A& L要求抽出一些像素,这些像素满足以下条件+ u9 I: d" H# P$ p5 P1 b- |  C
6 R& u' _; ]) e  ^! q6 r, a
1. 颜色都相同是黄色
0 Y( ]1 F$ e0 _/ S8 u. K8 g0 s9 v2.在图片中的位置x,y都相同
( [4 S, F6 `+ M0 L. O5 K5 ~1 S3.这些点在每张图片中都出现
! ~, E+ o6 t. ~9 A( |
+ |( Q& f, v  C& |6 d$ m' @要求程序能对应24bit  bmp 和32bit bmp
/ B; a) B# q  v1 G# v0 C0 ?6 }+ q" J
把所有满足条件的点的x,y都输出到一个文本文件就行。/ z2 m# A" \" P* y$ z# ?2 H9 E8 g
这个程序主要是用来做图像识别的预处理。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

沙发
发表于 2009-6-3 20:13 | 只看该作者
查找像素的问题不难,难的是识别成文本文件。OCR的技术还是比较困难的。对于英文字体来说,26个字母+数字+符号可以生成码表查找,但是存在几个问题:; ?- d3 |- z% O- n% |! g; V
1、每个字符的宽度不同,这样在获取的时候有一定困难;! h3 v! B  o7 h. Y
2、文字字体假如不同,就需要建立不同的对码表;
4 H# C. S8 ], s+ n( l. Q+ L, m4 I3、如果是汉字,那需要的码表就更复杂了3 v- d" U6 L0 V6 H2 ^1 a/ @0 ~% ]/ V
暂时只想到这些。
回复 支持 反对

使用道具 举报

板凳
 楼主| 发表于 2009-6-3 20:22 | 只看该作者
引用第1楼肥牛于2009-06-03 20:13发表的  :" H' m/ n$ F7 V3 o( I$ F/ Y* o2 v
查找像素的问题不难,难的是识别成文本文件。OCR的技术还是比较困难的。对于英文字体来说,26个字母+数字+符号可以生成码表查找,但是存在几个问题:, B  G4 [& B6 k' N( q
1、每个字符的宽度不同,这样在获取的时候有一定困难;0 J7 X: A8 |8 f" H" X; t1 @
2、文字字体假如不同,就需要建立不同的对码表;
2 X% r& p9 r  Y6 w3、如果是汉字,那需要的码表就更复杂了
8 g# i5 h. J; E暂时只想到这些。
9 w2 _, s5 C) x- J5 {
1 U8 Q" }4 {' m2 x0 D6 Q
呵呵。这些问题我早就想到了。
( x. y2 B2 e7 x7 e6 g* z* Z办法都有了,就是最近这几天的事情。
2 Q' M. I4 p) K* O4 L1 }$ R7 z5 v7 q只是还来不及详细写出来。
. }% A7 p  N2 x6 y5 P/ K5 b/ W你先看看我最近的帖子。
  q7 R. i; o* H5 f等等,我来解释。。。
回复 支持 反对

使用道具 举报

地板
 楼主| 发表于 2009-6-3 20:31 | 只看该作者
你先看看这个帖子7 Y6 b! e9 r4 a" S% b5 y5 r5 e2 w1 t
https://www.chinaavg.com/read.php?tid=17369# r2 R2 T, H0 m: }. J

5 t$ J2 a5 b' m其实对你的问题都有回答了,- q. m- n& i( b. H0 S
字符的宽度和高度肯定要调整,通过修改xml和tga来调整。4 c4 q1 T8 O3 u# a/ T$ F; _
我识别的不是字体,是色块和像素。
& j& i6 X8 J$ _7 Q, I也就是我说的变型条形码和2维码。) X. Q) V4 s8 D4 n) i: A/ [: u
的确要建立码表。
) {4 z; U& D# F$ I! R" @- e- {- k% _0 x) n
需要进一步解释吗?
回复 支持 反对

使用道具 举报

5#
发表于 2009-6-4 21:14 | 只看该作者
VB,DELPHI都有一种异或笔刷,可以试一试~
1 b# I9 [+ n4 d) hC的话调用GDI进行XOR应该可以,我先试一试去~
回复 支持 反对

使用道具 举报

6#
发表于 2009-6-4 21:50 | 只看该作者
补个VB CODE..
& I8 Y1 z+ X5 L3 }: E$ v* ?5 c0 j2 ^+ `$ p
这个意思?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

7#
 楼主| 发表于 2009-6-4 21:57 | 只看该作者
引用第5楼firendless于2009-06-04 21:50发表的  :
1 K* e2 U1 J+ i) r0 p9 \' [补个VB CODE..
1 n; r% T/ f0 n/ Q, |: K3 n; d- u6 O6 R! `- r& L' M
这个意思?
- j0 z; D7 b, B( L
你把代码放出来吧。
, i& E# _# `( v8 P! |光测试看不出对不对。
回复 支持 反对

使用道具 举报

8#
发表于 2009-6-4 22:02 | 只看该作者
别说丑...种子扫描算法..[就是平推]
  1. Option Explicit
  2. Private Declare Function GetPixel _
  3.                 Lib "gdi32" (ByVal hdc As Long, _
  4.                              ByVal x As Long, _
  5.                              ByVal y As Long) As Long
  6. Private Sub cmdText_Click()
  7.     With picBox
  8.         .Cls
  9.         .ForeColor = vbYellow
  10.         picBox.Print "This is a test."
  11.     End With
  12. End Sub
  13. Private Sub cmdWork_Click()
  14.     Dim x      As Single, y As Single, w As Single, h As Single
  15.     Dim strOut As String, strTmp As String, lngTmp As Long
  16.     With picBox
  17.         w = .Width
  18.         h = .Height
  19.     End With
  20.     strOut = ""
  21.     strTmp = ""
  22.     For x = 0 To w
  23.         For y = 0 To h
  24.             lngTmp = GetPixel(picBox.hdc, x, y)
  25.             If lngTmp = 0 Then
  26.                 strTmp = "x:" & x & " y:" & y & vbNewLine
  27.                 strOut = strOut & strTmp
  28.    
  29.             End If
  30.    
  31.         Next
  32.    
  33.     Next
  34.     txtOut = strOut
  35. End Sub
  36. Private Sub cmdXor_Click()
  37.     With picBox
  38.         .DrawMode = vbXorPen
  39.         picBox.Line (0, 0)-(.Width, .Height), vbYellow, BF
  40.     End With
  41. End Sub
复制代码
回复 支持 反对

使用道具 举报

9#
 楼主| 发表于 2009-6-4 22:05 | 只看该作者
放着,以后可能会有用。
回复 支持 反对

使用道具 举报

sspking 该用户已被删除
10#
发表于 2009-6-4 22:06 | 只看该作者
这个事情不难,我给你写个小程式~
$ r+ s# T) g' x- P8 X  R就是取一个图片,把图片中所有的指定颜色的XY坐标集输出到TXT中对吧?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

冒险解谜游戏中文网 ChinaAVG

官方微博官方微信号小黑屋 微信玩家群  

(C) ChinaAVG 2004 - 2019 All Right Reserved. Powered by Discuz! X3.2
辽ICP备11008827号 | 桂公网安备 45010702000051号

冒险,与你同在。 冒险解谜游戏中文网ChinaAVG诞生于2004年9月9日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

快速回复 返回顶部 返回列表