Insights·2026-10-12

PillCheck 扫描 — 药袋二维码一对准就保存,处方照片先在手机里遮盖再发送

PillCheck 扫描是在 PillCheck(필첵)应用中记录所服药物的入口。点击底部菜单的「扫描」,应用内相机会立即打开;把药袋上的二维码对准方框,一识别出来调剂记录就会保存。处方用照片拍摄,但这张照片不会原样发出。手机会先把患者姓名栏和居民登记号码栏整格涂黑,手机号码和条形码也一并涂掉,然后再读一遍涂过的照片,只有确认读不出姓名时才把它发去做文字识别。无法遮盖的照片不会发送,应用会提示重新拍摄或直接搜索药品。

承接前文PillCheck OCR — 用一张处方照片生成用药清单
필첵 앱 화면 두 장 — 왼쪽은 「아직 등록된 약이 없어요」 홈 화면에 「약봉투 QR로 시작해보세요」 칸과 「+ QR 등록」 버튼이 있는 화면, 오른쪽은 처방전·약봉투·낱알 탭과 카메라 칸, 「본인의 처방전만 등록해 주세요. 사진을 기기에서 처리하고, 필요한 경우 개인정보를 가린 사진으로 추가 인식을 진행합니다」 고지와 「처방전 사진으로 등록」 버튼이 있는 등록하기 화면
App Store 등록 화면. 홈의 약봉투 QR 안내와 스캔 탭의 등록하기 화면이다. 스토어 등록 때 찍은 화면이라 지금 앱의 전체 화면 카메라와는 배치가 다르다.

PillCheck 扫描是做什么的功能

PillCheck 应用已于 10 月 4 日在 App Store 上架,在 Google Play 也能下载。这个连载每篇看应用的一个功能。第一篇讲所有记录的起点——扫描。

PillCheck 是在一个地方查看所服药物信息、服药时间和调剂记录的服务。这些画面都要在药物被记录之后才有意义。扫描让你不必逐个输入药名,只要用相机对准手中的纸张就能记录。

扫描画面的对象有三个:处方、药袋、药片。本文讲前两个。药袋用二维码记录,处方用照片记录。药片是根据药片照片推荐相似药物候选的独立功能。

网页版(www.pillcheck.co.kr)的照片登记已在上一篇「PillCheck OCR」中介绍过。这次的新内容是应用。在应用里,照片离开手机之前会在手机里多经过一道步骤。

在应用里的使用顺序

PillCheck 应用登记画面——上方是处方、药袋、药片标签,中间是带有对准二维码方框的相机区域,下方是提示「请只登记本人的处方。照片在设备上处理,必要时用遮盖了个人信息的照片进行进一步识别。请确认识别出的药名和用法后再登记」和「用处方照片登记」按钮,最下方是首页、扫描、相互作用、时间线、社区菜单
App Store 上架画面中的扫描标签。底部灰色文字是应用对处方照片的承诺。

第一,点击屏幕最下方菜单中的「扫描」。不需要再按「拍摄」之类的按钮,相机会直接打开。第一次使用时会请求相机权限。

第二,在上方从处方、药袋、药片中选出手里拿着的东西。在相机画面上左右滑动也能切换到相邻的对象。

第三,如果是药袋,就把二维码对准画面中的方框。不用按任何按钮,一识别出二维码,调剂记录就会保存。二维码是用小方格图案存储信息的代码,药袋上的二维码里装着调出这次调剂记录的钥匙。保存记录需要登录。

第四,处方在处方标签里按快门拍照。在应用里,处方用照片而不是二维码记录。结果进入记录后,确认识别出的药名和用法,错误的地方进行修改。

按下快门的瞬间,手机里发生了什么

按下快门后,照片只存在于应用使用的临时空间里。它不会保存到手机相册,处理结束后应用会把它删除。

接着,手机自己读取照片里的文字。文字识别是把照片中的字符转换成计算机能够处理的文字的技术。PillCheck 应用自带这项功能,所以不用通过网络发送,手机就能在本机找出文字及其位置。

如果手机从头到尾可靠地读出了整张药品表,就只记录读出的药物清单,不发送照片。这样记录的药物会以未确认状态存入,在用户确认之前不会被当作已确认的药物使用。不过处方格式五花八门,仅靠手机可靠读完整张表的情况目前还不多。

否则,照片会被发送到文字识别服务器做更精确的读取。服务器是 PillCheck 运营的远程计算机。正是在这一步之前,手机会遮盖个人信息。

处方照片遮盖什么、保留什么

遮盖的是能认出患者的信息:患者姓名栏和居民登记号码栏、在其他位置再次印出的患者姓名、监护人等其他个人的姓名、手机号码,以及条形码。条形码是用粗细不同的条纹或点阵图案存储信息的代码,从外表看不出里面装了什么,所以找到的条形码一律涂掉。

保留的是药品表和医疗机构信息。服务器需要读取的是药名和用法,而医院和药房信息被认定为并不指向个人。药房名称和医院名称由手机在遮盖之前从原图中单独读取并传递,PillCheck 会把它们与医疗机构名单比对后附加到记录上。患者和药师的姓名也不会通过这条路径传递。

遮盖不是按字符,而是按格子进行。手机根据「姓名」「居民登记号码」等标签的位置找到对应的格子,把整个格子涂黑。如果先读出字符再只擦掉那些字符,被误读的字符就不会被当作要擦除的对象,而会原样留下。

涂完之后,手机会把结果图像从头再读一遍。只要还能在任何地方读出患者姓名,或者还留有条形码,这张照片就不会发送。只有通过这项检查的图像才会发送。发出去的不是原始照片,而是涂过之后新生成的图像,而且这张遮盖后的照片会显示在画面上,让你看到究竟发出了什么。

到达服务器之后的处理与「PillCheck OCR」中说明的一样:用药品代码查找并附加药品信息,读不出的行保留为「未知」,由用户填写。文字识别结束后,照片不会保存在服务器上。

开发时做出的决定及其理由

第一,拍摄不交给手机自带的相机应用,而是在应用内相机中完成。用自带相机拍摄,照片会留在相册里,而且每拍一次都要离开应用再回来。应用内相机在对准时可以持续读取二维码,所以药袋不用按快门就能完成。同一画面里二维码识别和快门重叠、导致同一个药袋被保存两次的情况也已被防止。

第二,一旦失败就不发送。如果页面不能被明确读成处方、找不到恰好一对带标签的患者姓名和居民登记号码,或者没能完成条形码检查,照片就不会离开手机。画面上会显示「无法安全发送照片。请重新拍摄或直接搜索。」比起发送遮盖不完整的照片,让用户再拍一次更好。

第三,药袋照片不发送到服务器。处方是固定格式,患者信息就在标签旁边;而药袋上的患者姓名没有标签,分散印在好几个地方。测试发现,靠手机读取文字来找姓名的方式无法遮住所有位置。所以药袋以二维码为默认方式。拍摄没有二维码的药袋时,只有手机自己可靠读完整张表时才会记录;否则会提示扫描二维码或直接搜索药品。

第四,遮盖方式与测试该方式的记录绑定成一对。只有获批的遮盖方式与其测试记录相匹配时,应用才会发送照片。测试记录里写着每个遮盖代码文件的指纹。指纹是根据文件内容计算出的唯一编号,哪怕只改一个字也会变。每次修改代码时都会自动运行的检查——自动测试——会把这些指纹与当前代码比对,所以一旦修改遮盖代码,在重新测试并生成新记录之前,测试都会报告失败。这从结构上防止了修改代码的人跳过测试。

处理文件照片时可以带走的做法

PillCheck 扫描中有三点可以用到其他工作上。

第一,在发送之前由发送方遮盖。接收方承诺不保存,与一开始就不让它收到,是两回事。能遮盖的东西,在源头遮盖最可靠。

第二,找要擦除的区域,而不是要擦除的字符。读出字符再擦掉,会把误读的字符留下。以标签这样位置固定的基准整块覆盖区域更安全。

第三,把「遮不住就不发」设为默认。今天可以试一件事:在把处方或合同的照片上传到 AI 聊天或其他服务之前,先在手机的照片编辑里涂掉姓名和号码栏,再把涂过的照片放大,确认没有字透出来。无法确认就不要上传。

下一篇讲点开已记录的药物时打开的药品搜索和药品详情。