我是頁面 - Moodle 暨大版紙本OMR測驗模組(Offline Quiz)

Moodle 暨大版紙本OMR測驗模組(Offline Quiz)

  1. 1.     暨大版紙本 OMR 測驗(Offline Quiz)模組相關說明

Offline quiz 是由奧地利維也納大學及維也納科技大學聯合其他奧地利四所大學共組的 AMC( Academic Moodle Cooperation) 公司開發及維護,原廠下載網址 https://github.com/academic-moodle-cooperation/moodle-mod_offlinequiz

 

Offline Quiz模組提供類似電腦光學閱卷功能,利用 Moodle 內建題庫及本模組功能,製作選擇題(含單選及複選)的 OMR(Optical Mark Recognition) 作答卷及試題卷,作答卷輸出檔案格式為 A4 大小PDF電子檔,試題卷可以選擇 PDF 或 Docx 檔案格式,再用一般雷射印表機列印,供學生考試之用。考試時學生使用藍黑色筆或深色鉛筆劃 ╳ 作答 。測驗結束後使用掃描器或影印複合機掃瞄學生作答卷,再上傳掃瞄產生的圖檔至 Moodle 即可自動辨識及計分。辨識計分後同學可以在 Moodle 看到自己的作答卷、成績及回饋,系統也會產生統計報表供教師分析學生作答結果。此模組為了預防學生作弊,同一份試題也可以產生不同分組作答卷及試題卷。

 

原始 Offline Quiz 模組功能有些限制或問題,經修改原始程式擴充功能及修正問題,明細如下:

 

n  原始 Offline Quiz 產生的作答卷及試題卷不支援中文、日文、韓文,經修改可產生中文、日文、韓文 PDF 試卷電子檔。

n  原始 Offline Quiz 只支援單頁的 tiff、gif 或 png 掃瞄圖檔,如果要一次上傳多頁圖檔,只能將這些單頁圖檔使用 zip 壓縮軟體縮成一個 zip 檔再上傳,使用很不方便。經修改 Offline Quiz 原始程式碼,可直接上傳多頁式 tiff 圖檔或 PDF 文件檔。

n  原始 Offline Quiz 只支援固定長度的學號,經修改原始程式碼後,現可支援少於設定長度的學號。

n  Offline Quiz原始程式在辨識掃瞄圖檔四個角落的控制符號時,如果圖檔四邊有掃瞄造成的陰影,系統會經常誤判而無法完成自動辨識,必須使用人工批改,手動修正四個角落的控制符號位置,才能完成辨識。經修改Offline Quiz 原始程式碼,可以避免如此情形發生。

n  如果是安裝在 Windows 作業系統平台的 Moodle,原始 Offline Quiz 是不支援非ASCII英文檔名上傳,經修改原始程式碼後,新的程式碼會自動偵測 Moodle是否是在 Windows 上執行,再依據其作業系統上的檔案系統的 Code Page,自動執行上傳檔案的檔名編碼轉換工作,因此可支援非ASCII英文檔名上傳。 但如果是上傳內有非 ASCII英文檔名的 Zip 檔,目前仍是有問題的。

n  Offline Quiz模組目前只有德文及英文語言套件可下載,因此花了一些時間進行英翻中工作,製作繁體中文語言套件,但因文化差異,可能會有翻錯或翻的不好的地方,如有請 Email: wcchien@ncnu.edu.tw 改正。

 

  1. 2.     安裝相關工具軟體

因修改 Offline Quiz原始程式擴充功能,此部分修改過的程式會使用以下工具軟體處理掃瞄圖檔,因此必需先安裝於 Moodle 伺服器上,系統才能正常運作,另外安裝此模組過程中也需輸入工具軟體的程式路徑。

 

2.1    安裝 Ghostscript

 

請在 Moodle 的 Web 伺服器主機作業系統上安裝Ghostscript 最新版( 目前版本 9.20),Ghostscript 下載網址: http://www.ghostscript.com/download/gsdnld.html 。Ghostscript 程式主要用來處理上傳的 PDF 作答卷及到缺考記錄表,將 PDF 檔轉換成多個PNG 圖檔(一頁一個圖檔)。Windows 作業系統可以將 ghostscript 安裝目錄下的 bin 子目錄全部檔案複製至 C:\gs 目錄。

 

在 Ubuntu Linux 作業系統可執行下列指令執行安裝 Ghostscript:

 

sudo apt-get install ghostscript

 

2.2    安裝 ImageMagick

 

請在 Moodle 的 Web 伺服器主機作業系統上安裝 ImageMagick 最新版( 目前版本 7.0.3-8), ImageMagick 下載網址: https://www.imagemagick.org/script/binary-releases.php 。ImageMagick 程式主要用來處理上傳的多頁式 tiff 作答卷及到缺考記錄表,將多頁 tiff 圖檔轉換成一頁一頁的 PNG 圖檔,另外在處理辨識掃瞄檔時,也會用 ImageMagick 的 magick執行檔來處理影像圖檔。

 

在 Ubuntu Linux 作業系統可執行下列指令執行安裝ImageMagick 最新版:

 

wget http://www.imagemagick.org/download/ImageMagick.tar.gz

tar -xvf ImageMagick.tar.gz

cd ImageMagick-7.*

./configure

make

sudo make install

sudo ldconfig /usr/local/lib

 

   安裝完後可以執行 magick 指令,來判斷是否安裝成功。

 

系統架構不使用 php 呼叫 ImageMagick 程式庫,而是由 php執行外部的 magick 程式來處理影像圖檔,原因是效能可以提昇很多。

 

  1. 3.     安裝暨大版紙本 OMR 測驗活動模組

3.1    解壓縮及複製暨大版紙本 OMR 測驗模組程式至 [您的 Moodle 安裝目錄路徑]/mod/offlinequiz 目錄。

 

3.2    以系統管理員帳號登入 Moodle,系統會自動安裝此模組,安裝完畢,系統會要求設定此這個新模組的系統相關設定,相關說明請參閱系統設定說明。

 

  1. 4.     暨大版紙本 OMR 測驗模組系統設定說明

以系統管理員帳號登入 Moodle,在 [系統管理] à [網站管理] à [外掛] à [活動模組] à [紙本 OMR 測驗] 設定。

 

3.1 主要系統設定

 

n   用戶識別(預設值:[7]=idnumber)

 

Moodle 的用戶個人基本資料有很多欄位,在繁體中文Moodle系統,主要用來識別用戶的欄位有帳號及學號這兩個欄位,分別對應到資料庫的 mdl_user 資料表的 username 及 idnumber 兩個欄位。在一般學校是使用學籍資料裡的學號來識別學生,強烈建議利用這兩個欄位來存放學號。這兩個欄位有點差異,username 是登入系統的帳號,絕對不能重覆,每一個用戶必須配給不同的帳戶。但idnumber 可以重覆,因此在同一課程裡如果有 2 個人的 idnumber 一樣,這樣識別學生就會有問題。

 

有些學校的電腦閱卷卡片並不是使用學號來識別學生,而是使用由年級、班別、座號組合而成的號碼來識別學生,這種情形可以將年級、班別、座號組合而成的號碼填入用戶個人資料欄位的 idnumber欄位,一樣可以達成與學號相同的目的,但是每一個新學年度,要記得要更新所有學生的年級、班別、座號組合而成的號碼。

 

用戶識別欄位主要用來定義作答卷上識別用戶欄位規則,以預設值 [7]=idnumber 為例說明: 是定義使用用戶個人資料 idnumber欄位來識別用戶, idnumber 值最長為 7 碼數字,而且只能使用 0 ~ 9 純數字,不能有英文字母。

 

另外系統限制英文字母只能設定在固定位置,以 s[8]=username  為例說明: 使用 username 欄位,此欄位第一碼為 ‘s’,後面加上最長 8 碼數字。

 

n   是否列印 study cod(預設值:是)

 

作答卷是否要是否列印 study code 欄位供學生自行填寫,study code 是國外學校一種特殊編碼,在本國用不到,建議設為‘否’。

 

n   打亂試題順序(預設值:否)

 

系統在產生題目卷及作答卷時,是否要打亂試題順序,因為可能有些題目是有順序關係,如果打亂,反而會有問題。如果要使用同一份試題實施分組測驗,為了預防作弊,只要啟用 [打亂試題內的答案選項順序] 即可,不需要啟用 [打亂試題順序],而且考試結束後,如果要在課堂檢討測驗卷,全班同學的試題順序必需要一樣,才能進行檢討。

 

n   打亂試題內的答案選項順序(預設值:是)

 

系統在產生題目卷及作答卷時,是否要打亂試題內的答案選項順序,如果有些答案選項是有順序關係,如以上皆非這類答案選項,這種情形就不能啟用此選項。

 

n   學校或組織的 Logo 圖案網址(預設值:空白)

 

作答卷右上角可加上學校或組織的 Logo 圖案,此欄位請輸入此圖檔網址,系統管理人員可以將此圖檔存此於 offline quiz 活動模組 pix 目錄下,再將此參數填入: http://[您的 Moodle 網址]/mod/offlinequiz/pix/[logo 圖檔檔名]。

圖案大小限制不能超過 520x140 點,超過此限制會影響作答卷電腦閱卷辨識。另外此欄位如果沒有填資料,系統會以維也納大學學校 Logo 取代。

 

n   題示著作權聲明(預設值:是)

如果啟用此選項,當學生在考試結束後,複閱自己的作答結果頁面時,會題示著作權聲明文字說明。

n   學校或組織全名(預設值:國立暨南國際大學)

 

用在題目卷封面頁的學校或組織全名,請自行修改填入自己的學校全名式或刪除留空白。

 

n   PDF 表單字型(預設值:msungstdlight)

英文系統字型可設 FreeSans(不支援中文), 中文系統可設 msungstdlight, 如果 Moodle 的 TCPDF 有安裝其他字型, 可自行設定如 cid0ct, cid0cs, cid0jp, cid0kr, arial ...

n   ghostscript 程式路徑(預設值:/usr/bin/gs)

Ghostscript 程式主要用來處理上傳的 PDF 作答卷及到缺考記錄表,請安裝於 Moodle 的伺服器上。在大多數的 Linux 此欄位可填入 /usr/bin/gs,Windows 作業系統可以將 ghostscript 安裝目錄下的 bin 子目錄全部檔案複製至 C:\gs 目錄,32 位元 ghostscript 可填入 c:\gs\gswin32c.exe,64 位元 ghostscript 可填入 c:\gs\gswin64c.exe。

n   ImageMagick 程式路徑(預設值:magick)

ImageMagick 程式主要用來處理上傳的多頁式 tiff 作答卷及到缺考記錄表,請安裝於 Moodle 的伺服器上。此欄位請填入 ImageMagick 的 magick程式路徑。

3.2 學生複閱選項設定

此類選項建議直接套用預設值,因為教師可以在個別的紙本 OMR 測驗的設定,自行決定是否對學生開放檢視以下這些項目。

n   原始作答(預設值:已啟用)

n   是否答對(預設值:已啟用)

n   成績(預設值:已啟用)

n   選項的回饋(預設值:已啟用)

n   試題回饋(預設值:已啟用)

n   正確答案(預設值:已啟用)

n   作答卷掃瞄檔(預設值:已啟用)

n   含分數的作答卷掃瞄檔(預設值:已啟用)

3.3 配分選項設定

n   小數位數(預設值:2) : 分數的小數位數,如果全校都是使用整數來計分,建議可以改成 0。此選項教師可以在個別的紙本 OMR 測驗的設定自行定義。

3.4 掃瞄選項設定

n   紙張灰階度(預設值:標準) : 紙張的灰階度,此選項教師可以在個別的紙本 OMR 測驗的設定自行定義。

3.5 批改選項設定

n   一按就註冊(預設值:否) : 如果啟用此選項,當處理作答卷遇到有不是本課程的已註冊用戶時,系統會提供一個功能按鈕,教師可以按一個按鈕,直接將此用戶加入此課程變成註冊用戶。

n   一按就註冊的角色(預設值:學生) : 處理作答卷遇到有不是本課程的註冊用戶時,直接將此用戶註冊加入此課程的角色,本選項預設值是學生,不建議改為其他角色。

n   保留檔案天數(預設值:8): 上傳至系統的暫存區的檔案保留的天數。

 

  1. 5.     Cronjob 設定說明

在Intel i7 CPU個人電腦 Windows Server 平台上,處理辨識上傳的作答卷平均一頁大約需要 5至 6 秒,如果一個班級有 60 人,處理時間可能會超過6分鐘,因此不太可能在 Web 上作即時處理,只能使用批次作業方式來處理辨識上傳的作答卷,所以在作業系統需要設定排程來執行 Offline Quiz 的 cron job,此 cron job 程式路徑是在 Moodle 安裝目錄下的 mod/offlinequiz/cron.php ,建議排程每日每 5 至 10 分鐘執行一次。

        Linux 作業系統的設定範例:

*/10 * * * * php [您的 Moodle 安裝目錄路徑]/mod/offlinequiz/cron.php --cli=1

    Windows 作業系統可以在 [您的 Moodle 安裝目錄路徑]\mod\offlinequiz目錄下手動新增一個 cron.bat,內容如下:

php -f [您的 Moodle 安裝目錄路徑]\mod\offlinequiz\cron.php -- args –-cli=1

cron.bat範例:

php -f E:\MoodleWeb31\mod\offlinequiz\cron.php -- args -–cli=1

另外在 Windows 工作排程器,新增一個工作排程執行此 cron.bat 即可。

  1. 6.     安裝TCPDF 其他字型

Moodle 原始安裝程式,為了避免安裝程式過大,因此將 /lib/TCPDF 裡的一些Moodle沒有用到的工具程式及其他字型刪除掉,只留Moodle用到的核心字型及 FreeFont,而 Moodle 產生pdf相關文件就是使用 FreeSans 當成系統預設字型。Moodle 的 TCPDF 字型是放在 Moodle安裝目錄的 /lib/tcpdf/fonts 目錄下,除了如 msungstdlight.php 支援繁體中文,stsongstdlight.php 支援簡體中文,其他內附的字型大部分都不支援 CJK 字型。

 

        如果msungstdlight 字型不符合需求,可以從 GitHub下載 TCPDF 原始程式,下載網址: https://github.com/tecnickcom/TCPDF/archive/master.zip ,解壓縮後,在 fonts 子目錄有cid0ct.php 支援繁體中文,cid0cs.php支援簡體中文,cid0jp.php支援日文、cid0kr.php 支援韓文等四種支援 CJK 字型。再將這些字型複製至   $CFG->dataroot/fonts/ 目錄或 [您的 Moodle 安裝目錄路徑]/lib/tcpdf/fonts 目錄即可。

 

        TCPDF 原始程式裡的 /tools/tcpdf_addfont.php 是一支字型轉檔工具程式,它可以將 ttf 字型轉成 TCPDF 可以用的字型,

 

以Windows 作業系統為例,C:\Windows\fonts\ARIALUNI.TTF 是一個支援 Unicode 的 Arial TTF 字檔,大小約 22 M,可以在命令提示字元模式下,使用下列指令執行轉檔:

 

php -f tcpdf_addfont.php -- -b -t TrueTypeUnicode -i C:\Windows\fonts\ARIALUNI.TTF

 

執行完畢後,在 /fonts 目錄下會產生 3 個檔,分別為 arialuni.php,  arialuni.z arialuni.ctg.z,大小合計約 17.3 M,可以把它們分別更名為arial.php,arialuni.z, arial.ctg.z,再複製至 Moodle 的$CFG->dataroot/fonts/ 目錄或 [您的 Moodle 安裝目錄路徑]/lib/tcpdf/fonts 目錄即可。

 

最後記得在紙本 OMR 測驗模組系統設定,修改 [PDF 表單字型] 字型參數成 arial ,即可使用 arial 字型產生 PDF 表單。

 

  1. 7.     Moodle版本限制及問題反應

暨大版紙本 OMR 測驗模組,目前使用在國立暨南國際大學課程資訊網 http://moodle.ncnu.edu.tw 約有一段時間,而此網站的 Moodle 版本是 3.1 版,因此目前釋出的暨大版紙本 OMR 測驗模組也只支援 Moodle 3.1 版,未來 AMC 公司如果釋出 Moodle 3.2 版 Offline Quiz,暨大也會配合修改再釋出。

 

此模組在暨大的 Moodle 網站作業系統環境是 Windows Server 2012 R2 中文版 + IIS 8.5 + PHP 7.0 + MySQL 5.6,另外修改過模組程式也曾在 Ubuntu 16.04 的Linux 作業系統上進行測試,基本上也是沒有問題,如有任何問題,歡迎直接 Email wcchien@ncnu.edu.tw 簡文章即可。

 

 

 

最後修改: 2019年 09月 18日(週三) 09:53