一種基于三角形的圖像輪廓匹配算法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種基于三角形的圖像輪廓匹配算法,其包括以下步驟:在待檢索圖像的輪廓上任意選擇一點(diǎn)記為C;將與點(diǎn)C不直接相鄰的點(diǎn)記為A,尋找垂直AC于C點(diǎn)的直線(xiàn),且該直線(xiàn)與待檢索圖像的輪廓存在交點(diǎn)B,構(gòu)件成了對(duì)應(yīng)的直角三角形ABC;如果AC大于BC,則將BC除以AC的值記為R,如果AC小于BC,則將AC除以BC的值記為R;得出最小值Rmin和最大值Rmax;預(yù)設(shè)出需要檢索圖像庫(kù)中每一個(gè)圖像的Rmin[N]的數(shù)組和Rmax[N]的數(shù)組;將待檢測(cè)圖像的最小值Rmin和最大值Rmax分別和需要檢索的圖像庫(kù)中各個(gè)圖像的Rmin[N]和Rmax[N]數(shù)組進(jìn)行比對(duì);如果同一個(gè)點(diǎn)的Rmin和Rmax都是匹配的,則兩幅圖像輪廓匹配。本發(fā)明的算法匹配準(zhǔn)確度高,算法方便、簡(jiǎn)單,計(jì)算速度快,且適用范圍廣。
【專(zhuān)利說(shuō)明】—種基于三角形的圖像輪廓匹配算法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于圖像匹配【技術(shù)領(lǐng)域】,具體涉及一種基于三角形的圖像輪廓匹配算法。
【背景技術(shù)】
[0002]當(dāng)人們觀(guān)察周?chē)h(huán)境時(shí),首先注意到的是物體及其周?chē)h(huán)境的顏色、紋理、形狀和空間關(guān)系等等。形狀是物體最基本的有感覺(jué)意義的特征之一,并且具有較好的不變性。在計(jì)算機(jī)視覺(jué)的模式識(shí)別中,形狀是對(duì)目標(biāo)范圍的二值圖像表示,可以看成是目標(biāo)輪廓,它是用于目標(biāo)識(shí)別的重要特征。在機(jī)器識(shí)別事物的過(guò)程中,經(jīng)常需要將已知圖像的輪廓與陌生圖像的輪廓全部或者部分在空間上配準(zhǔn),根據(jù)已知模式的形狀在一幅陌生圖像中尋找對(duì)應(yīng)該模式的子形狀,這個(gè)過(guò)程就是形狀匹配。我們將已知的形狀或已知模式的形狀稱(chēng)為模板,在陌生物體輪廓形狀中可能與它對(duì)應(yīng)的子圖稱(chēng)作該模板的潛在匹配子形狀。形狀匹配時(shí)衡量形狀見(jiàn)相似性的一種技術(shù),在眾多領(lǐng)域得到可廣泛的應(yīng)用,如文字識(shí)別、目標(biāo)識(shí)別、碎片復(fù)原、基于內(nèi)容的圖像檢索和醫(yī)療診斷等。因此,開(kāi)展輪廓匹配技術(shù)的研究具有重要的理論意義和實(shí)用價(jià)值。
[0003]現(xiàn)有輪廓匹配技術(shù)有以下幾種:
一、Hu 矩
Hu矩是歸一化中心矩的線(xiàn)性組合,其主要是使用對(duì)變換不敏感的基于區(qū)域的幾個(gè)矩。Hu.M.K在1962年提出了 7個(gè)這樣的矩,并將它們構(gòu)成一組特征量,并被證明具有平移、縮放和旋轉(zhuǎn)不變性。實(shí)際上,在對(duì)圖像中物體識(shí)別的過(guò)程中,只有前兩個(gè)矩不變性保持的比較好,其他的幾個(gè)不變矩帶來(lái)的誤差比較大,有學(xué)者認(rèn)為只有基于二階矩的不變矩對(duì)二維物體的描述才是真正的具有旋轉(zhuǎn)、縮放和平移不變性。由Hu矩組成的特征量對(duì)圖片進(jìn)行識(shí)另O,優(yōu)點(diǎn)就是速度很快,缺點(diǎn)是識(shí)別率比較低,這一部分是由于Hu不變矩只用到低階矩(最多也就用到三階矩),對(duì)于圖像的細(xì)節(jié)未能很好的描述出來(lái),導(dǎo)致對(duì)圖像的描述不夠完整。Hu不變矩一般用來(lái)識(shí)別圖像中大的物體,對(duì)于物體的形狀描述的比較好,圖像的紋理特征不能太復(fù)雜,像識(shí)別水果的形狀,或者對(duì)于車(chē)牌中的簡(jiǎn)單字符的識(shí)別效果會(huì)相對(duì)好一些。
[0004]二、基于角點(diǎn)的輪廓匹配
X.C.He和Nelson.H.C.Yung提出了一種基于曲率的角點(diǎn)檢測(cè)方法。該方法的原理是利用圖像全局和局部的曲率特性,在提取角點(diǎn)時(shí)綜合考慮其影響。
[0005]由于距離和曲率具有平移、旋轉(zhuǎn)不變性,因此該方法能克服圖像間平移和旋轉(zhuǎn)的變化。但是對(duì)于不同分辨率的圖像,基于該方法提取的角點(diǎn)并不完全一致。這主要是由于輪廓=提取的結(jié)果難免會(huì)存在一些局部突變和毛刺現(xiàn)象,造成整個(gè)輪廓曲線(xiàn)的不光滑,而基于曲率的角點(diǎn)提取對(duì)曲線(xiàn)上的每一個(gè)點(diǎn)計(jì)算曲率,因此容易受噪聲的影響。
[0006]三、鏈碼直方圖
方向鏈碼(Freeman鏈碼)是用來(lái)表示物體輪廓的典型鏈碼表示法。一條離散曲線(xiàn)可以定義為Z2域內(nèi)一組數(shù)量有蒂娜的8聯(lián)通店。因此,一條數(shù)字化二值曲線(xiàn)可以用方向鏈碼表示相信兩像素連線(xiàn)的8中可能的方向值。
[0007]鏈碼法的特點(diǎn):
(O計(jì)算量小,可滿(mǎn)足實(shí)時(shí)性要求;
(2)具有平移、尺度不變性;
(3)具有90度旋轉(zhuǎn)不變性;
(4)規(guī)格化鏈碼直方圖可以達(dá)到更好的旋轉(zhuǎn)不變性。
[0008]但鏈碼直方圖將人眼看上去相似的物體歸為一類(lèi),因此不能進(jìn)行精確地識(shí)別和分類(lèi)。
【發(fā)明內(nèi)容】
[0009]為了解決現(xiàn)有技術(shù)中存在的上述問(wèn)題,本發(fā)明的目的是提供一種匹配準(zhǔn)確度高,算法方便、簡(jiǎn)單,計(jì)算速度快,且適用范圍廣的基于三角形的圖像輪廓匹配算法。
[0010]為實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案為:一種基于三角形的圖像輪廓匹配算法,其包括以下步驟:
步驟SI,在待檢索圖像的輪廓上任意選擇一點(diǎn)記為C ;將待檢索圖像的輪廓上任意一與點(diǎn)C不直接相鄰的點(diǎn)記為A,得到直線(xiàn)AC ;尋找垂直AC于C點(diǎn)的直線(xiàn),且該直線(xiàn)與待檢索圖像的輪廓存在交點(diǎn),將這些交點(diǎn)中與C點(diǎn)最近的點(diǎn)記為點(diǎn)B,則構(gòu)件成了對(duì)應(yīng)的直角三角形ABC ;如果AC大于BC,則將BC除以AC的值記為R,如果AC小于BC,則將AC除以BC的值記為R ;對(duì)于待檢測(cè)圖像輪廓上多個(gè)不同的與C不相鄰的一系列點(diǎn)Ai,得到對(duì)應(yīng)的一系列Ri ;取出最小值Rmin和最大值Rmax ;
步驟S2,對(duì)需要檢索的圖像庫(kù)中各個(gè)圖像按照步驟SI中分方法對(duì)每一個(gè)圖像進(jìn)行相同操作,圖像庫(kù)中每一個(gè)圖像得到得一個(gè)Rmin[N]的數(shù)組和Rmax[N]的數(shù)組,N為每個(gè)圖像的點(diǎn)數(shù);
步驟S3,將待檢測(cè)圖像的最小值Rmin和最大值Rmax分別和需要檢索的圖像庫(kù)中各個(gè)圖像的Rmin[N]和Rmax[N]數(shù)組進(jìn)行比對(duì);如果同一個(gè)點(diǎn)的Rmin和Rmax都是匹配的,貝Ij需要檢索的圖像庫(kù)中的該圖像與待檢測(cè)圖像中對(duì)應(yīng)的直角三角形是匹配的,也即兩幅圖像輪廓匹配;如果同一個(gè)點(diǎn)的Rmin和Rmax不匹配,則兩幅圖像輪廓不匹配。
[0011]優(yōu)選方案,所述步驟S1、步驟S2和步驟S3為分別選擇一系列的點(diǎn)Ci,分別對(duì)這一系列的點(diǎn)Ci的R值進(jìn)行匹配。采用匹配多個(gè)不同待檢測(cè)圖像的Ci和需要檢索的圖像庫(kù)中各圖像的C/點(diǎn),可以進(jìn)一步提高匹配的準(zhǔn)確度。
[0012]當(dāng)然,其它三角形匹配算法基本也是類(lèi)似的,如果頂角不是90度,也可以選其它任意角度,如30度,45度,60度等,但90度的算法是最方便,最簡(jiǎn)單的。
[0013]采用以上技術(shù)方案,本發(fā)明的有益效果為:
1.匹配準(zhǔn)確度高:
因?yàn)椴捎玫氖侨切尉_匹配,在不考慮實(shí)際圖像的現(xiàn)實(shí)意義,只是純圖形意義的比較情況下,對(duì)應(yīng)頂點(diǎn)是100%完全匹配的。即使考慮這些圖像在實(shí)際生活中的各種情況,匹配精確度也在95%以上,并且可以用多點(diǎn)比較的辦法進(jìn)一步提高匹配精確度。
[0014]2.算法復(fù)雜度低,計(jì)算和匹配速度快。
[0015]對(duì)待檢圖像的輪廓點(diǎn),只需要有限幾次單重遍歷。對(duì)待庫(kù)中圖像的輪廓,只有一次雙重遍歷,而且圖像庫(kù)都是可以預(yù)先處理并保存結(jié)果數(shù)據(jù)的。而且計(jì)算直線(xiàn)的算法也是很簡(jiǎn)單的兩三次乘除運(yùn)算。
[0016]3.適用范圍廣:
不僅可以使用于最廣泛的日常生活圖像和視頻;也適用于大量的專(zhuān)業(yè)圖像如醫(yī)療圖像、衛(wèi)星圖像、遙感圖像、氣象圖像等;還實(shí)用于各種人工生成的圖像,如幾何圖形、卡通圖形,設(shè)計(jì)圖紙等等。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0017]圖1為本發(fā)明基于三角形的圖像輪廓匹配算法的方案示意框圖。
【具體實(shí)施方式】
[0018]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明了,下面結(jié)合【具體實(shí)施方式】并參照附圖,對(duì)本發(fā)明進(jìn)一步詳細(xì)說(shuō)明。應(yīng)該理解,這些描述只是示例性的,而并非要限制本發(fā)明的范圍。此外,在以下說(shuō)明中,省略了對(duì)公知結(jié)構(gòu)和技術(shù)的描述,以避免不必要地混淆本發(fā)明的概念。
[0019]現(xiàn)在主流的計(jì)算機(jī)圖像都是像素點(diǎn)組成的矩陣,圖像輪廓就相當(dāng)于不規(guī)則的多邊形,而多邊形在數(shù)學(xué)上可以用若干個(gè)三角形組合而成。圖像講過(guò)縮放、旋轉(zhuǎn)、鏡像等變換之后,這些組成輪廓的三角形的大小尺度可能會(huì)改變,但是其形狀和比例是不會(huì)改變的。如果我們?cè)诓煌膱D像輪廓中能夠找到這些對(duì)應(yīng)的形狀一致的三角形,我們認(rèn)為這些對(duì)應(yīng)的三角形頂點(diǎn)組成的輪廓是匹配的。
[0020]一種基于三角形的圖像輪廓匹配算法,其包括以下步驟:
步驟SI,運(yùn)用直角三角形算法處理待檢索圖像上選擇的需要匹配的點(diǎn);即在待檢索圖像的輪廓上任意選擇一點(diǎn)記為C;將待檢索圖像的輪廓上任意一與點(diǎn)C不直接相鄰的點(diǎn)記為A,得到直線(xiàn)AC ;尋找垂直AC于C點(diǎn)的直線(xiàn),且該直線(xiàn)與待檢索圖像的輪廓存在交點(diǎn),將這些交點(diǎn)中與C點(diǎn)最近的點(diǎn)記為點(diǎn)B,則構(gòu)件成了對(duì)應(yīng)的直角三角形ABC ;如果AC大于BC,則將BC除以AC的值記為R,如果AC小于BC,則將AC除以BC的值記為R ;對(duì)于待檢測(cè)圖像輪廓上多個(gè)不同的與C不相鄰的一系列點(diǎn)Ai,得到對(duì)應(yīng)的一系列Ri ;取出最小值Rmin和最大值Rmax ;
步驟S2,運(yùn)用直角三角形算法處理需要檢索的圖像庫(kù)中各個(gè)圖像的輪廓指定點(diǎn);即對(duì)需要檢索的圖像庫(kù)中各個(gè)圖像按照步驟SI中分方法對(duì)每一個(gè)圖像進(jìn)行相同操作,圖像庫(kù)中每一個(gè)圖像得到得一個(gè)Rmin [N]的數(shù)組和Rmax [N]的數(shù)組,N為每個(gè)圖像的點(diǎn)數(shù);
步驟S3,將每一個(gè)待匹配的點(diǎn)的Rmin和Rmax在對(duì)應(yīng)的Rmin[N]和Rmax[N]數(shù)組中尋找匹配項(xiàng);即將待檢測(cè)圖像的最小值Rmin和最大值Rmax分別和需要檢索的圖像庫(kù)中各個(gè)圖像的Rmin[N]和Rmax[N]數(shù)組進(jìn)行比對(duì);如果同一個(gè)點(diǎn)的Rmin和Rmax都是匹配的,貝Ij需要檢索的圖像庫(kù)中的該圖像與待檢測(cè)圖像中對(duì)應(yīng)的直角三角形是匹配的,也即兩幅圖像輪廓匹配;如果同一個(gè)點(diǎn)的Rmin和Rmax不匹配,則兩幅圖像輪廓不匹配。
[0021 ] 為進(jìn)一步提高匹配的準(zhǔn)確度,所述步驟S1、步驟S2和步驟S3為分別選擇一系列的點(diǎn)Ci,分別對(duì)這一系列的點(diǎn)Ci的R值進(jìn)行匹配。匹配多個(gè)不同待檢測(cè)圖像的Ci和需要檢索的圖像庫(kù)中各圖像的C/點(diǎn),提高了匹配的準(zhǔn)確度。
[0022]當(dāng)然,其它三角形匹配算法基本也是類(lèi)似的,如果頂角不是90度,也可以選其它任意角度,如30度,45度,60度等,但90度的算法是最方便,最簡(jiǎn)單的。
[0023]為了進(jìn)一步說(shuō)明本發(fā)明,以下提供了基于標(biāo)準(zhǔn)C++的參考實(shí)現(xiàn),當(dāng)然其常用的開(kāi)發(fā)環(huán)境可以是:如windows平臺(tái)下的visual stud1; linux/unix平臺(tái)下的gcc/g++等都可編譯通過(guò)。而且其它編程語(yǔ)言和系統(tǒng)平臺(tái)也可以輕易移植。本實(shí)施例的C++詳見(jiàn)見(jiàn)下面的代碼內(nèi)容。
[0024]typedef struct _tagPhRat1
{ double rmin;
double rmax;
}PHRA1;
//交換數(shù)值,保持X〈 y
void swap (double x,double y)
{ double t;
if(x > y)
{t = y;y = x;x = t;}
}
double Distance (int xl,int yl,int x2,int y2)
{ return sqrt ((xl~x2)^(xl~x2) + (yl-y2)^(yl-y2));
}
//在輪廓圖上掃描輪廓點(diǎn)
int ScanEdgePoints(IMAGED img, P0INT*& edgepoints)
{ int col = 0, row = 0;
int nEdgePointCount = 0;
for (row=0; row < img->height; row++)
{ for (col=0; col< img->width; col++)
{ //判斷是否為輪廓點(diǎn)
if(img->imageData[row * img->widthStep + col] > 0 )
nEdgePointCount ++;
}
}
if (nEdgePointCount == 0) return 0;
edgepoints = new POINT[nEdgePointCount];
assert (edgepoints != 0x00);
int nlndex = 0;
for (row=0; row < img->height; row++)
{for (col=0; col< img->width; col++)
{if (img->imageData[row * img->widthStep + col] > 0 )
{ edgepoints [nlndex ].x = col;
edgepoints [nlndex ].y = row;
nlndex++;
}
}
}
return nEdgePointCount;
}
bool FindRat1(IMAGE* img, POINT* edgepoints, int nEdgePointsCount, intnPointCIndex, \
doubIe& rat1—min, doubIe& rat1—max)
{ int y = 0;
double ACWidth=Oj
double BCWidth=O;
double rat1_cur = 0;
for (int j=0; j<nEdgePointsCount; j++)
{if (nPointCIndex == j) continue;
ACWidth = Distance (edgepoints [nPointCIndex].x,edgepoints[nPointCIndex].y, \
edgepoints[j].x, edgepoints[j].y);
if (ACWidth <= I) continue; //忽略直接相鄰點(diǎn)
double k = 0;
if (edgepoints [ j].y != edgepoints [nPointCIndex].y)
k= (edgepoints[j].x - edgepoints[nPointCIndex].x) / \
(edgepoints[j].y - edgepoints[nPointCIndex].y);
//直線(xiàn)BC的方程
y = ο;
for (int x=edgepoints [nPointCIndex].x -1; x > 0; x—)
{y = int ( _k 木(x - edgepoints [nPointCIndex].x) - edgepoints[nPointCIndex].y);
if(y>0 I I y < -1mg ->height) continue; //超過(guò)范圍了,沒(méi)有交點(diǎn)
if(img->imageData[ (-y) * img->widthStep + x] > 0 )
{BCWidth = Distance (edgepoints [nPointCIndex].x, edgepoints[nPointCIndex].y, \
x, -y);
swap (ACWidth, BCWidth); // 使 ACWidth < BCWidth
rat1—cur = ACWidth / BCWidth;
if (rat1—min >= rat1_cur) rat1—min = rat1_cur;
if (rat1—max <= rat1_cur) rat1—max = rat1_cur;
break; //找到直線(xiàn)BC和輪廓的交點(diǎn)了,退出
}
}
//直線(xiàn)BC’的方程
y = O;
for (int X = edgepoints [nPointCIndex].x +1; x < img->width; x++)
{
y = int ( _k 木(x - edgepoints [nPointCIndex].x) - edgepoints[nPointCIndex].y);
if(y>0 I I y< -1mg->height) continue; //超過(guò)范圍了,沒(méi)有交點(diǎn)
if(img->imageData[ (-y) * img->widthStep + x] > 0 )
{
BCWidth = Distance (edgepoints [nPointCIndex].x, edgepoints[nPointCIndex].y, \
x, -y);
swap(ACWidth, BCWidth); // 使 ACWidth < BCWidth
rat1—cur = ACWidth / BCWidth;
if (rat1—min >= rat1_cur) rat1—min = rat1_cur;
if (rat1—max <= rat1_cur) rat1—max = rat1_cur;
break; //找到直線(xiàn)BC’和輪廓的交點(diǎn)了,退出
}
}
}
return true;
}
bool TriangleMatch(IMAGE* libimg, IMAGE* targetimg)
{
POINT* edgepoints = OxOO;
int nEdgePointCount = ScanEdgePoints(libimg, edgepoints);
if (nEdgePointCount <=0) return false;
//對(duì)圖像庫(kù)中某個(gè)圖像進(jìn)行處理
PHRA1* rat1—array = new PHRA1[nEdgePointCount];
memset(rat1_array, 0,sizeof (rat1_array));
for (int i=0; i< nEdgePointCount; i++)
{ double rat1—max = 0;
double rat1—min = 10000;
if(FindRat1 (libimg, edgepoints, nEdgePointCount, i,rat1—min,
rat1—max))
{ rat1_array [i].rmin = rat1—min;
rat1_array [i].rmax = rat1—max;
}
} //對(duì)待比較圖像進(jìn)行處理 POINT* edgepoints—t = OxOO;
int nEdgePointCount_t = ScanEdgePoints (targetimg,edgepoints_t);
if (nEdgePointCount—t <=0) return false;
double rat1—max_t = 0;
double rat1—min_t = 10000;
if (FindRat1(targetimg, edgepoints_t,nEdgePointCount_t, 0,rat1—min_t,rat1—max_t))
//比較rat1的值,可以比較待比較圖像上目標(biāo)輪廓上的多個(gè)點(diǎn)已提高準(zhǔn)確程度。
for (int k = 0; k<nEdgePointCount; k++)
{if ((abs (rat1—min_t - rat1_array [k].rmin)<=( rat1—min_t * 0.05))
&&\
(abs (rat1—max_t - rat1_array [k].rmax)<=( rat1—max_t ^0.05)))
{ delete rat1_array;
return true;
}
}
delete rat1_array;
return false;
}//TriagleMatch
應(yīng)當(dāng)理解的是,本發(fā)明的上述【具體實(shí)施方式】?jī)H僅用于示例性說(shuō)明或解釋本發(fā)明的原理,而不構(gòu)成對(duì)本發(fā)明的限制。因此,在不偏離本發(fā)明的精神和范圍的情況下所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。此外,本發(fā)明所附權(quán)利要求旨在涵蓋落入所附權(quán)利要求范圍和邊界、或者這種范圍和邊界的等同形式內(nèi)的全部變化和修改例。
【權(quán)利要求】
1.一種基于三角形的圖像輪廓匹配算法,其包括以下步驟: 步驟SI,在待檢索圖像的輪廓上任意選擇一點(diǎn)記為C ;將待檢索圖像的輪廓上任意一與點(diǎn)C不直接相鄰的點(diǎn)記為A,得到直線(xiàn)AC ;尋找垂直AC于C點(diǎn)的直線(xiàn),且該直線(xiàn)與待檢索圖像的輪廓存在交點(diǎn),將這些交點(diǎn)中與C點(diǎn)最近的點(diǎn)記為點(diǎn)B,則構(gòu)件成了對(duì)應(yīng)的直角三角形ABC ;如果AC大于BC,則將BC除以AC的值記為R,如果AC小于BC,則將AC除以BC的值記為R ;對(duì)于待檢測(cè)圖像輪廓上多個(gè)不同的與C不相鄰的一系列點(diǎn)Ai,得到對(duì)應(yīng)的一系列Ri ;取出最小值Rmin和最大值Rmax ; 步驟S2,對(duì)需要檢索的圖像庫(kù)中各個(gè)圖像按照步驟SI中分方法對(duì)每一個(gè)圖像進(jìn)行相同操作,圖像庫(kù)中每一個(gè)圖像得到得一個(gè)Rmin[N]的數(shù)組和Rmax[N]的數(shù)組,N為每個(gè)圖像的點(diǎn)數(shù); 步驟S3,將待檢測(cè)圖像的最小值Rmin和最大值Rmax分別和需要檢索的圖像庫(kù)中各個(gè)圖像的Rmin[N]和Rmax[N]數(shù)組進(jìn)行比對(duì);如果同一個(gè)點(diǎn)的Rmin和Rmax都是匹配的,貝Ij需要檢索的圖像庫(kù)中的該圖像與待檢測(cè)圖像中對(duì)應(yīng)的直角三角形是匹配的,也即兩幅圖像輪廓匹配;如果同一個(gè)點(diǎn)的Rmin和Rmax不匹配,則兩幅圖像輪廓不匹配。
2.根據(jù)權(quán)利要求1所述的一種基于三角形的圖像輪廓匹配算法,其特征在于,所述步驟S1、步驟S2和步驟S3為分別選擇一系列的點(diǎn)Ci,分別對(duì)這一系列的點(diǎn)Ci的R值進(jìn)行匹配。
【文檔編號(hào)】G06T7/00GK104408726SQ201410716389
【公開(kāi)日】2015年3月11日 申請(qǐng)日期:2014年12月2日 優(yōu)先權(quán)日:2014年12月2日
【發(fā)明者】許書(shū)華 申請(qǐng)人:上海許書(shū)華電子科技有限公司