Summary: I need a means to sort scanned worksheets, by page number, and by student name, into a folder belonging to each student.

I need to setup a process for easily sorting worksheets completed by students. The basic idea is, I'll collect their work, run it through a feed scanner, which sends me a PDF of all of the pages. I can use ImageMagick or another tool to split the PDFs into separate JPEGs, but from there, need some way to automatically sort the files.

The first sort is to find which student the work belongs to. This either means some very very smart hand-writing recognition software to identify their name, or something like a bubble form they fill out. Names could be too long, so I can assign them a 3-digit number. The JPEGs belonging to that student get placed in a folder with his/her name, e.g. "~/Worksheets/Jane Smith/".

The next sort is to simply determine the page or worksheet number. I can put a barcode or Aztec somewhere, if that is needed, but better is if it can simply look for the page number in a certain area and sort. The worksheet is named and put in the studnet's folder, e.g. if it is page 33, ~/Worksheets/Jane Smith/33.jpeg".

Does anyone have any ideas what tools I can use for scanning the information off the page?

  • Does it have something visible? You could add information to the images metadata for example. May 13 at 20:45
  • 1
    Perhaps you could share more details on the process and not the least medium from start to finish. I.e. these worksheets: Are they typically Q&A with printed text where students check of boxes and write text, equations, drawings, ...? Or are they "blank papers" where they write with no initial data? Both perhaps? Do they print these them selves, or is it something you do? How is it distributed to the students? We typically used Front page: Course, assignment and student number. E.g. "IN3694 \n Ob 2 \n Student: 09634", and then the paper. If it is "blank pages" do they number these themselves?
    – ibuprofen
    May 31 at 13:45
  • 1
    @ibuprofen Ideally, I would take ~10 student binder at a time, unclip the pages, and put them in a whole stack. The students would have to place the custom barcode page in the front, and put the remaining pages in numerical order. Then put them in a feed scanner. The software would have to look through the pages, identifying the cover page, to know that it changed students.
    – Village
    May 31 at 19:07
  • 1
    OK. Then it should be trivial as long as the cover sheet is OK. Have used tesseract to identify cover sheets an apply page numbering (in case it is missing) as a layover on PDF files - and TOC's to list, in your case - one per student. A TOC tree with each assignment as a node and the pages as a sub-tree. With TOC's one could also cross-reference but do not immediately see how that could be useful here. I have done that in accounting where TOC have one list of vouchers by number, another with vouchers by group (account) etc.
    – ibuprofen
    May 31 at 19:17
  • 1
    Yes, there is tools and libraries for it. (For example libdmtx) I would consider QR-code over barcode though as the former has more redundancies in regards to damage on the medium. One can make things easier by using markers and one layout with a good OCR font for text. Typically like one see on blankets used in banking etc. Even if one do not use it now one have it for later if one ever should find the use for it.
    – ibuprofen
    Jun 2 at 2:35

Scanning for arbitrary content is seriously non trivial. (Much as Jeremy Boden has said)

An alternative to custom printing the worksheets might be to custom print cover pages.

You'd need to print one unique cover page per student - include a barcode or a q-code or whatever works for you.

You would then photocopy those - create one copy per assignment, or more if you want spares.

When students submit work, they use the coverpage as the first page.

When you process the scan, each coverpage would tell you which student submitted the following pages.

You then 'just' need to:

  • test if a page is a cover page
  • if a cover page, determine which student, and create a new directory
  • if not a cover page, add to the same directory

You'll still have to do some manual work - mostly checking that students always submit a coversheet. Otherwise, work will end up in the wrong folder, which is correctable, but a nuisance. However, there is no perfect solution to this problem. This might be as close as you can get, given your constraints.

  • 1
    This solution is definitely doable. I was planning on unclipping their work from their notebooks before scanning students, so the work would already be grouped, I can tell them add the cover page before the group of work to be graded.
    – Village
    May 24 at 21:22
  • That sounds really very workable - but how important is the sorting by page number in the question? Would the assumption that the pages are presented in the correct order be good enough? This would allow you to associate the broken-out PDF page number with the student's page number. May 25 at 2:00

I don't believe there is an answer to this question (as posed).

However,If you must deal with printed/handwritten material, why not issue preprinted forms containing a barcoded or other reference that is unique to the student.

You can associate the unique reference with the student name and if absolutely necessary use OCR to recognise the page number - assuming you can't rely on the student submitting the pages in the correct order.

Ideally the student could submit a word processor or LaTeX file directly via e-mail. Scanning of printed material is virtually impossible to automate 100% correctly and handwritten material almost certainly impossible.

  • Pre-printing every form to have unique student data presents additional problems, first printing is significantly more costly than photocopying, second, actually handing out the materials becomes very time-consuming when this is done. I'm permitted to photocopy up to 1,000 pages per month, but printing is limited to close to 1,000 pages per school year.
    – Village
    May 18 at 22:54
  • 1
    Though I have a method of collecting Word documents from students, my school only permits me to use one particular Web site for this, and it has been extremely buggy (keeps losing student work, can't tell me if they submitted an update after I graded, etc.) so I'm trying to avoid using that tool. I'm actually prohibited from using alternative Web sites (will "confused students"), so that's why I'm looking for this rather alternative solution.
    – Village
    May 18 at 22:56
  • On submission the student should get a dated receipt, possibly via email and all submitted documents should be time-stamped so that you can identify late or duplicate submissions. You will find dealing with any quantity of paper submissions will be tedious and time consuming. May 19 at 0:40
  • If you are going to store written work as image files - perhaps on a server? Then the JPEG files are going to require a lot more space than any word processor document. You will need reliable backup procedures in place. May 19 at 0:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.