導(dǎo)語
幼兒園升小學(xué),小學(xué)升中學(xué),中學(xué)升高中..........
每個人都要經(jīng)歷的九年義務(wù)教育:伴隨的都是作業(yè)、隨堂考、以及每個科目的大大小小的考試。當(dāng)然小編被考試支配的恐懼以及過去了哈~除了學(xué)生考試的壓力之外。
有調(diào)查發(fā)現(xiàn),目前老師大量的時間被小型考試,如課堂測驗、周測等高頻次測驗的批改客觀題、計分、登分等占用,被迫壓縮了備課、精準(zhǔn)輔導(dǎo)的時間。
今天小編帶大家做一款解放教師的自動閱卷系統(tǒng)。
幾千張的答題卡掃描錄入電腦閱卷系統(tǒng),老師們只需打開電腦登陸,即可找到自己要批改的那道題。
大大提高了改卷效率,降低合分?jǐn)?shù)的錯誤率。整個過程保密學(xué)生姓名,公平公正。
答題卡識別:
(一)設(shè)置答題卡的位置坐標(biāo)分為左上,右上,右下,左下。
def order_points(pts):
# 一共4個坐標(biāo)點
rect = np.zeros((4, 2), dtype = "float32")
# 按順序找到對應(yīng)坐標(biāo)0,1,2,3分別是 左上,右上,右下,左下
# 計算左上,右下
s = pts.sum(axis = 1)
rect[0] = pts[np.argmin(s)]
rect[2] = pts[np.argmax(s)]
# 計算右上和左下
diff = np.diff(pts, axis = 1)
rect[1] = pts[np.argmin(diff)]
rect[3] = pts[np.argmax(diff)]
return rect
(二)確保檢測到:
if len(cnts) > 0:
# 根據(jù)輪廓大小進(jìn)行排序
cnts = sorted(cnts, key=cv2.contourArea, reverse=True)
for c in cnts:
# 遍歷每一個輪廓 # 近似
peri = cv2.arcLength(c, True)
approx = cv2.approxPolyDP(c, 0.02 * peri, True)
# 準(zhǔn)備做透視變換
if len(approx) == 4:
docCnt = approx
break
(三)判斷正確率
# 與正確答案進(jìn)行對比
color = (0, 0, 255)
k = ANSWER_KEY[q]
# 判斷正確 if k == bubbled[1]:
color = (0, 255, 0)
correct += 1
cv2.drawContours(warped, [cnts[k]], -1, color, 3)
#繪圖
附源碼:
現(xiàn)代的“機(jī)器閱卷”,工作便捷、效率高、易操作,只需要一個相機(jī)(手機(jī)),拍照即可獲取成績,可以導(dǎo)入Excel表格便于存檔管理。
總結(jié)
解放老師的雙手,節(jié)省時間給大家補(bǔ)習(xí) !23333........不用太感謝我,好事不留名!
愛我你怕了嘛??!
源碼基地:## 959755565 ##!歡迎!
到此這篇關(guān)于我用Python給班主任寫了一個自動閱卷腳本(附源碼)的文章就介紹到這了,更多相關(guān)Python自動閱卷腳本內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- Pytest+request+Allure實現(xiàn)接口自動化框架
- python開發(fā)的自動化運(yùn)維工具ansible詳解
- python實現(xiàn)自動化腳本編寫
- Python實現(xiàn)網(wǎng)絡(luò)自動化eNSP
- 教你怎么用Python處理excel實現(xiàn)自動化辦公
- python+requests+pytest接口自動化的實現(xiàn)示例
- python 自動化偷懶的四個實用操作