版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
公式(4.4.2)4.4.2暗通道處理在惡劣天氣車牌圖像中會(huì)出現(xiàn)由于霧天導(dǎo)致車牌不能被準(zhǔn)確識(shí)別的情況出現(xiàn)為了應(yīng)對(duì)這種情況我們使用了暗通道處理方式來(lái)針對(duì)霧天的車牌圖像進(jìn)行去噪。在了解暗通道處理的原理之前,會(huì)發(fā)現(xiàn)在一些無(wú)霧圖像中,圖像中每一個(gè)局部區(qū)域都很有可能有至少一個(gè)顏色通道會(huì)有很低的值或者黑色的東西。由于霧在視覺(jué)上是呈現(xiàn)灰白色的,因此一旦圖像受到霧的影響,那么這些本來(lái)應(yīng)該表現(xiàn)出正常顏色的東西就會(huì)變得灰白。所以車牌圖像需要經(jīng)過(guò)暗通道處理來(lái)消除霧對(duì)原本車牌圖像的影響,以免造成車牌無(wú)法準(zhǔn)確識(shí)別的情況出現(xiàn)。4.4.3中值濾波處理在對(duì)雨、雪天氣車牌圖像進(jìn)行去噪過(guò)程中,中值濾波方法能夠有效地針對(duì)雨、雪天氣車牌圖像中由于天氣原因產(chǎn)生的椒鹽噪聲進(jìn)行去噪。中值濾波是非線性的圖像處理方法,中值濾波法可以在對(duì)圖像進(jìn)行去噪的同時(shí)對(duì)圖像邊界的信息進(jìn)行保留。中值濾波就是選一個(gè)含有奇數(shù)點(diǎn)的窗口,將這個(gè)窗口在圖像上進(jìn)行有順序的掃描,之后把窗口中所含的像素點(diǎn)按灰度級(jí)進(jìn)行一定順序排列,取位于排列中間的灰度值來(lái)作為該掃描窗口的灰度值。4.5車牌識(shí)別算法設(shè)計(jì)(1)車牌分割算法因?yàn)槲覈?guó)車牌的固定方法是通過(guò)鉚釘將車牌古固定車輛上,且因?yàn)檐嚺贫ㄎ恢械倪吔缭肼暫陀捎趷毫犹鞖猱a(chǎn)生和的噪聲等問(wèn)題會(huì)降低識(shí)別的成功率。本次車牌識(shí)別算法先將車牌圖像針對(duì)相應(yīng)的惡劣天氣進(jìn)行圖像去噪,在對(duì)車牌進(jìn)行灰度化處理,之后經(jīng)過(guò)車牌的粗定位和靜定位定位到車牌在圖像中位置,再進(jìn)行字符分割和字符識(shí)別確定車牌號(hào)碼。(2)車牌字符分割算法設(shè)計(jì)在本次惡劣天氣下的車牌識(shí)別系統(tǒng)中,圖像經(jīng)過(guò)了粗定位和精定位確定車牌圖像位置之后會(huì)進(jìn)行車牌的方向校正,經(jīng)方向校正的車牌圖像定位后,保證車輛圖像是否傾斜,然后二值化和去框架,通過(guò)垂直投影的字符分割之后可以輸出單個(gè)車牌字符,然后字符進(jìn)行識(shí)別的步驟。圖4-5顯示了車牌字符分割算法流程圖。圖4-5字符分割流程圖4.6Python平臺(tái)下車牌字符識(shí)別算法設(shè)計(jì)在車牌字符圖像的字符提取和識(shí)別中,需要對(duì)字符圖像進(jìn)行預(yù)處理,去除冗余信息和干擾信息。預(yù)處理包括切割。圖4-6裁剪前的車牌字符圖4-7裁剪后的車牌字符在對(duì)字符圖像進(jìn)行預(yù)處理之后,才可以對(duì)處理后的字符圖像進(jìn)行特征提取和識(shí)別操作。4.7車牌識(shí)別系統(tǒng)的實(shí)現(xiàn)4.7.1系統(tǒng)主界面系統(tǒng)進(jìn)入到系統(tǒng)中,可以選擇圖片來(lái)進(jìn)行識(shí)別。圖4-7-1系統(tǒng)主頁(yè)面4.7.2車牌識(shí)別本功能是本系統(tǒng)研究的重點(diǎn),通過(guò)讀取相冊(cè)圖片,通過(guò)圖像處理算法來(lái)識(shí)別出車牌號(hào),并且可以將車牌去去噪處理,可以識(shí)別出雨、雪、霧等惡劣天氣的影響下的車牌。車牌粗定位處理功能實(shí)現(xiàn):通過(guò)訓(xùn)練找出車牌的大概位置,為車牌精定位做好準(zhǔn)備。實(shí)現(xiàn)代碼:##該函數(shù)是初步的框出車牌的大概位置屬于粗定位出一個(gè)保險(xiǎn)的包含車牌的大小defcomputeSafeRegion(shape,bounding_rect):top=bounding_rect[1]#ybottom=bounding_rect[1]+bounding_rect[3]#y+hleft=bounding_rect[0]#xright=bounding_rect[0]+bounding_rect[2]#x+wmin_top=0max_bottom=shape[0]min_left=0max_right=shape[1]#print"computeSateRegioninputshape",shapeiftop<min_top:top=min_top#print"taptop0"ifleft<min_left:left=min_left#print"tapleft0"ifbottom>max_bottom:bottom=max_bottom#print"tapmax_bottommax"ifright>max_right:right=max_right#print"tapmax_rightmax"#print"corr",left,top,right,bottomreturn[left,top,right-left,bottom-top]#框出車牌識(shí)別的區(qū)域defcropped_from_image(image,rect):x,y,w,h=computeSafeRegion(image.shape,rect)returnimage[y:y+h,x:x+w]#detectPlateRough是返回圖像中所有車牌的邊框在圖片中的bbox返回的是一個(gè)表示車牌區(qū)域坐標(biāo)邊框的list#返回圖片中所有識(shí)別出來(lái)的車牌邊框bboxdefdetectPlateRough(image_gray,resize_h=720,en_scale=1.08,top_bottom_padding_rate=0.05):print(image_gray.shape)#top_bottom_padding_rate:表示要裁剪掉圖片的上下部占比iftop_bottom_padding_rate>0.2:print("error:top_bottom_padding_rate>0.2:",top_bottom_padding_rate)exit(1)#resize_h:重新設(shè)定的圖像大小,此處保持大小不變height=image_gray.shape[0]padding=int(height*top_bottom_padding_rate)scale=image_gray.shape[1]/float(image_gray.shape[0])image=cv2.resize(image_gray,(int(scale*resize_h),resize_h))#裁剪掉top_bottom_padding_rate比例的垂直部分image_color_cropped=image[padding:resize_h-padding,0:image_gray.shape[1]]#裁剪之后的圖片進(jìn)行灰度化處理image_gray=cv2.cvtColor(image_color_cropped,cv2.COLOR_RGB2GRAY)#根據(jù)前面的cv2.CascadeClassifier()物體檢測(cè)模型(3),輸入image_gray灰度圖像,#邊框可識(shí)別的最小size,最大size,輸出得到車牌在圖像中的offset,也就是邊框#左上角坐標(biāo)(x,y)以及邊框高度(h)和寬度(w)watches=watch_cascade.detectMultiScale(image_gray,en_scale,2,minSize=(36,9),maxSize=(36*40,9*40))#對(duì)得到的車牌邊框的bbox進(jìn)行擴(kuò)大(此刻得到的車牌可能因?yàn)檐嚺苾A斜等原因?qū)е嘛@示不完整),#先對(duì)寬度左右各擴(kuò)大0.14倍,高度上下各擴(kuò)大0.6倍cropped_images=[]for(x,y,w,h)inwatches:cropped_origin=cropped_from_image(image_color_cropped,(int(x),int(y),int(w),int(h)))x-=w*0.14w+=w*0.28y-=h*0.6h+=h*1.1;#按擴(kuò)大之后的大小進(jìn)行裁剪cropped=cropped_from_image(image_color_cropped,(int(x),int(y),int(w),int(h)))cropped_images.append([cropped,[x,y+padding,w,h],cropped_origin])returncropped_images圖4-7-2車牌識(shí)別識(shí)別車牌顏色功能實(shí)現(xiàn):可以識(shí)別藍(lán)牌、單層黃牌、綠色-新能源車牌、白色-大使車牌、黑色-港澳車牌。plateType=[u"藍(lán)牌",u"單層黃牌",u"新能源車牌",u"白色",u"黑色-港澳"]defGetmodel_tensorflow(nb_classes):#nb_classes=len(charset)img_rows,img_cols=9,34#numberofconvolutionalfilterstousenb_filters=32#sizeofpoolingareaformaxpoolingnb_pool=2#convolutionkernelsizenb_conv=3#x=np.load('x.npy')#y=np_utils.to_categorical(range(3062)*45*5*2,nb_classes)#weight=((type_class-np.arange(type_class))/type_class+1)**3#weight=dict(zip(range(3063),weight/weight.mean()))#調(diào)整權(quán)重,高頻字優(yōu)先model=Sequential()model.add(Conv2D(16,(5,5),input_shape=(img_rows,img_cols,3)))model.add(Activation('relu'))model.add(MaxPool2D(pool_size=(nb_pool,nb_pool)))model.add(Flatten())model.add(Dense(64))model.add(Activation('relu'))model.add(Dropout(0.5))model.add(Dense(nb_classes))model.add(Activation('softmax'))pile(loss='categorical_crossentropy',optimizer='adam',metrics=['accuracy'])returnmodel#將圖片輸入到模型進(jìn)行測(cè)試predict,根據(jù)車牌顏色判斷類型,#深色背景白色字體返回0,類似淺色背景深色字體的返回大于零的類型model=Getmodel_tensorflow(5)model.load_weights("./model/plate_type.h5")model.save("./model/plate_type.h5")defSimplePredict(image):image=cv2.resize(image,(34,9))#將原來(lái)車牌圖像resize大?。?4*9image=image.astype(np.float)/255#將原來(lái)灰度圖顏色通道[0,255]轉(zhuǎn)化為float類型[0,1]#將原來(lái)灰度圖顏色通道[0,255]轉(zhuǎn)化為float類型[0,1]res=np.array(model.predict(np.array([image]))[0])#將原來(lái)灰度圖顏色通道[0,255]轉(zhuǎn)化為float類型[0,1]returnres.argmax()boundaries=[([100,80,0],[240,220,110]),#yellow([0,40,50],[110,180,250]),#blue([0,60,0],[60,160,70]),#green]color_attr=["黃牌","藍(lán)牌",'綠牌','白牌','黑牌']threhold_green=13threhold_blue=13threhold_yellow1=50threhold_yellow2=70#plt.figure()#plt.axis("off")#plt.imshow(image)#plt.show()#使用枚舉類鑒定車牌顏色defjudge_color(color):r=color[0]g=color[1]b=color[2]ifg-r>=threhold_greenandg-b>=threhold_green:return2ifb-r>=threhold_blueandb-g>=threhold_blue:return1ifr-b>threhold_yellow2andg-b>threhold_yellow2:return0ifr>200andb>200andg>200:return3ifr<50andb<50andg<50:return4return-1defjudge_plate_color(img):image=cv2.cvtColor(img,cv2.COLOR_BGR2RGB)image=image.reshape((image.shape[0]*image.shape[1],3))clt=KMeans(n_clusters=2)clt.fit(image)hist=centroid_histogram(clt)index=np.argmax(hist)#printclt.cluster_centers_[index]#color_index=search_boundaries(clt.cluster_centers_[index])color_index=judge_color(clt.cluster_centers_[index])ifcolor_index==-1:ifindex==0:secound_index=1else:secound_index=0color_index=judge_color(clt.cluster_centers_[secound_index])ifcolor_index==-1:printclt.cluster_centers_bar=plot_colors(hist,clt.cluster_centers_)#showourcolorbartplt.figure()plt.axis("off")plt.imshow(bar)plt.show()ifcolor_index!=-1:returncolor_attr[color_index],clt.cluster_centers_[index]else:returnNone,clt.cluster_centers_[index]車牌字符識(shí)別的實(shí)現(xiàn):deffastdecode(y_pred):results=""confidence=0.0table_pred=y_pred.reshape(-1,len(chars)+1)res=table_pred.argmax(axis=1)fori,oneinenumerate(res):ifone<len(chars)and(i==0or(one!=res[i-1])):results+=chars[one]confidence+=table_pred[i][one]confidence/=len(results)returnresults,confidence#對(duì)于每個(gè)車牌區(qū)域的for循環(huán)中,經(jīng)過(guò)fineMappingVertical處理后輸入到recognizeOne函數(shù),進(jìn)行ocr識(shí)別defrecognizeOne(src):#x_tempx=cv2.imread(src)x_tempx=src#x_tempx=cv2.bitwise_not(x_tempx)x_temp=cv2.resize(x_tempx,(160,40))x_temp=x_temp.transpose(1,0,2)t0=time.time()y_pred=pred_model.predict(np.array([x_temp]))y_pred=y_pred[:,2:,:]#plt.imshow(y_pred.reshape(16,66))#plt.show()##cv2.imshow("x_temp",x_tempx)#cv2.waitKey(0)returnfastdecode(y_pred)defctc_lambda_func(args):y_pred,labels,input_length,label_length=argsy_pred=y_pred[:,2:,:]returnK.ctc_batch_cost(labels,y_pred,input_length,label_length)defconstruct_model(model_path):width,height,n_len,n_class=164,48,7,len(chars)+1#輸入層為164*48*3的tensor,類別有l(wèi)en(chars)+1個(gè)rnn_size=256input_tensor=Input((None,40,3))x=input_tensorbase_conv=32foriinrange(3):#一共做了三次卷積池化x=Conv2D(base_conv*(2**(i)),(3,3),padding="same")(x)#卷積層x=BatchNormalization()(x)#統(tǒng)一量綱防止網(wǎng)絡(luò)失衡x=Activation('relu')(x)#采用RELU激活函數(shù)x=MaxPooling2D(pool_size=(2,2))(x)#池化層x=Conv2D(256,(5,5))(x)#卷積層,圖像的的空域卷積x=BatchNormalization()(x)x=Activation('relu')(x))#激活函數(shù)是relux=Conv2D(1024,(1,1))(x)x=BatchNormalization()(x)x=Activation('relu')(x)x=Conv2D(len(e2e.chars)+1,(1,1))(x)x=Activation('softmax')(x)base_model=Model(inputs=input_tensor,outputs=x)base_model.load_weights(model_path)returnbase_model尋找車牌左右邊界以及垂直邊緣檢測(cè)的實(shí)現(xiàn):#尋找車牌左右邊界deffind_edge(image):sum_i=image.sum(axis=0)sum_i=sum_i.astype(np.float)sum_i/=image.shape[0]*255#printsum_istart=0;end=image.shape[1]-1fori,oneinenumerate(sum_i):ifone>0.4:start=i;ifstart-3<0:start=0else:start-=3break;fori,oneinenumerate(sum_i[::-1]):ifone>0.4:end=end-i;ifend+4>image.shape[1]-1:end=image.shape[1]-1else:end+=4breakreturnstart,end#垂直邊緣檢測(cè)defverticalEdgeDetection(image):image_sobel=cv2.Sobel(image.copy(),cv2.CV_8U,1,0)#image=auto_canny(image_sobel)#img_sobel,CV_8U,1,0,3,1,0,BORDER_DEFAULT#canny_image=auto_canny(image)flag,thres=cv2.threshold(image_sobel,0,255,cv2.THRESH_OTSU|cv2.THRESH_BINARY)print(flag)flag,thres=cv2.threshold(image_sobel,int(flag*0.7),255,cv2.THRESH_BINARY)#thres=simpleThres(image_sobel)kernal=np.ones(shape=(3,15))thres=cv2.morphologyEx(thres,cv2.MORPH_CLOSE,kernal)returnthres#確定粗略的左右邊界defhorizontalSegmentation(image):thres=verticalEdgeDetection(image)#thres=thres*imagehead,tail=find_edge(thres)#printhead,tail#cv2.imshow("edge",thres)tail=tail+5iftail>135:tail=135image=image[0:35,head:tail]image=cv2.resize(image,(int(136),int(36)))returnimage第五章系統(tǒng)測(cè)試5.1測(cè)試的主要內(nèi)容本次實(shí)驗(yàn)使用的是黑盒測(cè)試法黑盒測(cè)試與白盒測(cè)試正好相反,白盒測(cè)試就是把系統(tǒng)看作一個(gè)可以看到的內(nèi)部結(jié)構(gòu)的盒子,痛苦哦白盒測(cè)試我們先定義系統(tǒng)的運(yùn)行結(jié)構(gòu)和邏輯,然后通過(guò)指令驗(yàn)證系統(tǒng)是否能達(dá)到我們相應(yīng)的預(yù)期結(jié)果,而黑盒測(cè)試就是把該系統(tǒng)看成一個(gè)黑色的不能看到內(nèi)部結(jié)構(gòu)的盒子,默認(rèn)我們并不知道該系統(tǒng)的實(shí)際運(yùn)行邏輯和組織架構(gòu),在所有系統(tǒng)功能都能完整的使用的前提下,驗(yàn)證其功能是否能達(dá)到預(yù)期和正常運(yùn)作的需求分析,輸入的內(nèi)容和所輸出的內(nèi)容是否相匹配。系統(tǒng)采用的測(cè)試用例如下表,表5-1所示:表5-1系統(tǒng)測(cè)試用例表用例編碼1描述惡劣天氣車牌識(shí)別系統(tǒng)預(yù)計(jì)輸出屏幕展現(xiàn)主要測(cè)試技術(shù)黑盒測(cè)試測(cè)試結(jié)果描述測(cè)試結(jié)果良好,定位誤差值在許可范圍內(nèi)執(zhí)行步驟檢查點(diǎn)檢查依據(jù)(功能需求編號(hào))期望輸出結(jié)果選擇功能1、選擇圖片1功能正常正常識(shí)別2、車牌識(shí)別2功能正常正常5.2測(cè)試結(jié)果通過(guò)以上的系統(tǒng)測(cè)試的結(jié)果,發(fā)現(xiàn)系統(tǒng)的運(yùn)行結(jié)果滿足滿足設(shè)計(jì)要求,能夠準(zhǔn)確識(shí)別惡劣天氣下的車牌圖片并準(zhǔn)確輸出相應(yīng)的車牌號(hào)。如果車牌能夠被準(zhǔn)確識(shí)別,它將跳轉(zhuǎn)到相應(yīng)的界面,否則將失敗并提示。雖然由于實(shí)驗(yàn)的原因無(wú)法進(jìn)一步去修改和優(yōu)化一些問(wèn)題,和繼續(xù)豐富系統(tǒng)的內(nèi)容,并堅(jiān)持追求使系統(tǒng)更加完美。但在未來(lái)的工作和學(xué)習(xí)中,我會(huì)以此為參照,努力使之后的設(shè)計(jì)變得更加周全和完美。第六章總結(jié)與展望在本次的惡劣天氣下的車牌自動(dòng)識(shí)別系統(tǒng)的設(shè)計(jì)實(shí)驗(yàn)中,我知道了本次實(shí)驗(yàn)沒(méi)有我之前所想象的那么簡(jiǎn)單。能造成這種想法是因?yàn)樽约簩?duì)這方面的知識(shí)還不夠了解。當(dāng)我真正的了解這方面的知識(shí)的時(shí)候才意識(shí)到原先自己的想法太過(guò)簡(jiǎn)單了。想要達(dá)成自己的實(shí)驗(yàn)結(jié)果并且清楚地介紹項(xiàng)目不是一件很簡(jiǎn)單的事情。設(shè)計(jì)這個(gè)程序首先要去分析它的用戶需求和使用環(huán)境,能給社會(huì)帶來(lái)什么好處,之后再去設(shè)計(jì)一個(gè)大體的框架,例如本程序所使用的算法和功能結(jié)構(gòu),包括每一個(gè)結(jié)構(gòu)是怎樣運(yùn)作的,每個(gè)結(jié)構(gòu)都有什么功能等等。同時(shí)學(xué)會(huì)了在開(kāi)發(fā)時(shí)要做到預(yù)先規(guī)劃好總體的框架并卻在編寫(xiě)代碼時(shí)候要做到命名規(guī)范,適當(dāng)?shù)奶砑幼⑨?,條理清晰且全面,盡量減少模塊之間的耦合,功能之間要區(qū)分清楚等。當(dāng)實(shí)現(xiàn)這些之后需要測(cè)試這些結(jié)構(gòu)是否可以運(yùn)行,就像參加了一個(gè)完完整整的項(xiàng)目一樣。在這個(gè)過(guò)程中我深感自己的能力有待提高和開(kāi)發(fā)一個(gè)應(yīng)用的不容易。去學(xué)習(xí)一個(gè)新的知識(shí)并且加以理解和運(yùn)用帶給我了很多不一樣的體驗(yàn),也是我成長(zhǎng)了許多。同時(shí)在設(shè)計(jì)的過(guò)程中讓我學(xué)會(huì)了如何去查找和使用一些資源和訪問(wèn)相關(guān)的數(shù)據(jù),并且通過(guò)這些數(shù)據(jù)的實(shí)驗(yàn)結(jié)果去建立和支持自己的觀點(diǎn)。這些都是在本次實(shí)驗(yàn)過(guò)程中我學(xué)到的東西。同時(shí),在查找文獻(xiàn),數(shù)據(jù)的手機(jī)和外文資料翻譯時(shí)候得到了他人的幫助,如果沒(méi)有他們的幫助我的程序也許也不會(huì)像現(xiàn)在一樣一帆風(fēng)順,這讓我了解到,與其自己去苦心琢磨卻很難有進(jìn)展的時(shí)候或許去尋求老師和同學(xué)的幫助會(huì)讓事情變得更有效率,與其閉門(mén)造車不如去尋求老師和同學(xué)的幫助。在翻譯外國(guó)文獻(xiàn)的時(shí)候會(huì)發(fā)現(xiàn)自己對(duì)于一些專業(yè)的知識(shí)理解不夠深刻同時(shí)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年贊皇縣招教考試備考題庫(kù)附答案解析
- 2025年義烏工商職業(yè)技術(shù)學(xué)院馬克思主義基本原理概論期末考試模擬題帶答案解析
- 監(jiān)理工程師水利工程中河湖整治工程監(jiān)理的護(hù)岸施工
- 基礎(chǔ)工程施工技術(shù)要點(diǎn)詳解
- 2024年閩西職業(yè)技術(shù)學(xué)院馬克思主義基本原理概論期末考試題含答案解析(奪冠)
- 2025年泗水縣幼兒園教師招教考試備考題庫(kù)含答案解析(奪冠)
- 2025年上海海事大學(xué)單招職業(yè)技能考試題庫(kù)帶答案解析
- 2025年集美大學(xué)誠(chéng)毅學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)附答案解析
- 2025年合肥職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性考試題庫(kù)附答案解析
- 2025年武漢航海職業(yè)技術(shù)學(xué)院馬克思主義基本原理概論期末考試模擬題附答案解析(奪冠)
- 兒童顱咽管瘤臨床特征與術(shù)后復(fù)發(fā)風(fēng)險(xiǎn)的深度剖析-基于151例病例研究
- 防潮墻面涂裝服務(wù)合同協(xié)議
- GB/T 15237-2025術(shù)語(yǔ)工作及術(shù)語(yǔ)科學(xué)詞匯
- 外賣(mài)跑腿管理制度
- 造價(jià)咨詢保密管理制度
- 冷鏈物流配送合作協(xié)議
- 生物-江蘇省蘇州市2024-2025學(xué)年第一學(xué)期學(xué)業(yè)質(zhì)量陽(yáng)光指標(biāo)調(diào)研卷暨高二上學(xué)期期末考試試題和答案
- 2024年人教版一年級(jí)數(shù)學(xué)下冊(cè)教學(xué)計(jì)劃范文(33篇)
- 成都隨遷子女勞動(dòng)合同的要求
- 萬(wàn)象城項(xiàng)目總承包述標(biāo)匯報(bào)
- 小學(xué)英語(yǔ)完形填空訓(xùn)練100篇含答案
評(píng)論
0/150
提交評(píng)論