KR20230135101A - 의약품 패키징에서 이질적인 콘텐츠를 제거하여 내부의콘텐츠의 검증을 용이하게 하기 위한 방법, 시스템 및 컴퓨터 프로그램 제품 - Google Patents

의약품 패키징에서 이질적인 콘텐츠를 제거하여 내부의콘텐츠의 검증을 용이하게 하기 위한 방법, 시스템 및 컴퓨터 프로그램 제품 Download PDF

Info

Publication number
KR20230135101A
KR20230135101A KR1020237027805A KR20237027805A KR20230135101A KR 20230135101 A KR20230135101 A KR 20230135101A KR 1020237027805 A KR1020237027805 A KR 1020237027805A KR 20237027805 A KR20237027805 A KR 20237027805A KR 20230135101 A KR20230135101 A KR 20230135101A
Authority
KR
South Korea
Prior art keywords
image
package
pharmaceutical package
drug
pharmaceutical
Prior art date
Application number
KR1020237027805A
Other languages
English (en)
Inventor
존 알프레드 부게이
토드 마틴 젠킨스
러셀 에프. 루이스
코리 스펜서 마틴
아비셱 레이
아비™r 레이
아서 에프. 스완슨
롱카이 쑤
Original Assignee
파라타 시스템즈, 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 파라타 시스템즈, 엘엘씨 filed Critical 파라타 시스템즈, 엘엘씨
Publication of KR20230135101A publication Critical patent/KR20230135101A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • G06T5/002
    • G06T5/005
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/60Image enhancement or restoration using machine learning, e.g. neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • G06T5/92Dynamic range modification of images or parts thereof based on global image properties
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/136Segmentation; Edge detection involving thresholding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/62Text, e.g. of license plates, overlay texts or captions on TV images
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H70/00ICT specially adapted for the handling or processing of medical references
    • G16H70/40ICT specially adapted for the handling or processing of medical references relating to drugs, e.g. their side effects or intended usage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/09Recognition of logos

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Primary Health Care (AREA)
  • Computing Systems (AREA)
  • Toxicology (AREA)
  • Pharmacology & Pharmacy (AREA)
  • Medicinal Chemistry (AREA)
  • Public Health (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Chemical & Material Sciences (AREA)
  • Epidemiology (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Medical Treatment And Welfare Office Work (AREA)
  • Medical Preparation Storing Or Oral Administration Devices (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)
  • Medicines Containing Plant Substances (AREA)
  • Detergent Compositions (AREA)

Abstract

방법은, 하나 이상의 의약품을 내부에 포함하는 의약품 패키지의 이미지를 수신하는 단계 - 상기 이미지는 면 상에 표시되는 라벨링 콘텐츠를 포함함 -; 인공지능 엔진을 이용하여, 상기 의약품 패키지의 면 상의 라벨링 콘텐츠를 검출하는 단계; 및 상기 의약품 패키지의 면에서 상기 라벨링 콘텐츠가 제거된 상기 의약품 패키지의 수정 이미지를 생성하는 단계를 포함한다.

Description

의약품 패키징에서 이질적인 콘텐츠를 제거하여 내부의 콘텐츠의 검증을 용이하게 하기 위한 방법, 시스템 및 컴퓨터 프로그램 제품
본 출원은 2021년 1월 29일에 출원된 미국 임시 출원(Provisional Application) 제63/143,400호의 우선권 및 이익을 주장하며, 그 개시 내용은 전체적으로 참조로 본원에 포함된다.
본 개시내용은 일반적으로 의약품의 패키징(packaging)에 관한 것으로, 구체적으로는, 의약품 패키지의 면으로부터 이질적인 콘텐츠(extraneous content)를 제거하여 의약품 패키지 콘텐츠(drug product package contents)의 검증(validation)을 용이하게 하기 위한 방법, 시스템, 및 컴퓨터 프로그램 제품에 관한 것이다.
의약품 패키징 시스템(Drug product packaging systems)은, 처방약을 조제하도록, 약국, 병원, 장기 요양 시설(long term care facilities) 등과 같은 시설에 사용되어 약을 조제할 수 있다. 이러한 의약품 패키징 시스템은 파우치(pouches), 바이알(vials), 병, 블리스터카드(blistercard), 및 스트립 패키징(strip packaging)을 포함하지만 이에 제한되지 않는 다양한 용기 유형으로 의약품(medications)을 포장하도록(package) 설계된 시스템을 포함할 수 있다. 스트립 패키징은, 특정한 날짜에(일부 경우에서는, 특정 시간에) 투여하기 위해 의약품이 개별 파우치들 내에 포장되는 유형의 패키징(packaging)이다. 통상적으로, 개별 파우치들은 함께 제거 가능하게 결합되고(joined) 종종 롤(roll)로 제공된다. 파우치는 필요할 때 롤로부터 분리될 수 있다.
예를 들어, 파우치 및 블리스터드와 같은 일부 유형의 의약품 패키지(drug product packages)는, 개인 건강 정보(PHI: Personal Health Information), 제조자 정보(예를 들어, 로고, 이름, 연락처 정보 등), 및/또는 의약품의 수, 의약품 이름, 투약 시간, 투약 강도(dosing strengths), 바코드(barcodes) 등과 같은 의약품 패키지의 콘텐츠(content)에 대한 다른 세부 사항과 같이 의약품 패키지 상에 인쇄된 콘텐츠를 포함할 수 있다. 의약품 패키지의 면(surface) 상의 이러한 콘텐츠는 의약품 패키지의 이미징(imaging)을 통해 의약품 패키지의 콘텐츠를 검증하는 것을 더 어렵게 할 수 있다.
본 발명의 개념의 일부 실시예에서, 방법은 하나 이상의 의약품을 내부에 포함하는 의약품 패키지(drug product package)의 이미지를 수신하는 단계 - 상기 이미지는 면(surface) 상에 표시되는 라벨링 콘텐츠(labeling content)를 포함함 -; 인공지능 엔진(artificial intelligence engine)을 이용하여, 상기 의약품 패키지의 면 상의 라벨링 콘텐츠를 검출하는 단계; 및 상기 의약품 패키지의 면에서 상기 라벨링 콘텐츠가 제거된 상기 의약품 패키지의 수정 이미지(modified image)를 생성하는 단계를 포함한다.
다른 실시예에서, 상기 라벨링 콘텐츠는 상업 마케팅 정보(commercial marketing information), 환자 식별 정보(patient identification information) 또는 개인 건강 관리 정보(personal healthcare information)를 포함한다.
또 다른 실시예에서, 상기 상업 마케팅 정보는 로고(logo) 또는 상호(business name)을 포함하고, 상기 환자 식별 정보는 환자 이름, 환자 전화 번호, 환자 주소, 또는 환자 식별 번호를 포함하고, 상기 개인 건강 관리 정보는 상기 하나 이상의 의약품에 대한 이름, 상기 하나 이상의 의약품 각각의 수, 상기 하나 이상의 의약품 각각에 대한 처방된 투여 시간(time of administration), 또는 상기 하나 이상의 의약품과 연관된 하나 이상의 바코드, 처방(prescription order), 환자 계정, 식별 번호, 또는 기타 정보를 포함한다.
또 다른 실시예에서, 상기 방법은, 상기 의약품 패키지의 감마 보정된 이미지(gamma corrected image)를 생성하기 위해, 상기 의약품 패키지의 이미지를 수신하는 것에 응답하여 상기 의약품 패키지의 이미지에 대하여 감마 보정(gamma correction)을 수행하는 단계; 상기 의약품 패키지의 노이즈 감소된 이미지(reduced noise image)를 생성하기 위해, 상기 의약품 패키지의 감마 보정된 이미지에 대하여 가우시안 블러 노이즈 제거(gaussian blur denoising)를 수행하는 단계; 및 상기 의약품 패키지의 전경-배경 분리 이미지(foreground-background separated image)를 생성하기 위해, 상기 의약품 패키지의 노이즈 감소된 이미지에 대하여 자동 이미지 임계 처리(automatic image thresholding)를 수행하는 단계를 더 포함한다. 상기 인공지능 엔진을 이용하여, 상기 라벨링 콘텐츠를 검출하는 단계는, 상기 인공 지능 엔진을 이용하여, 상기 의약품 패키지의 전경-배경 분리 이미지의 면 상의 라벨링 콘텐츠를 검출하는 단계를 포함한다.
또 다른 실시예에서, 상기 인공지능 엔진은 컨볼루션 신경망(convolutional neural network)이다.
또 다른 실시예에서, 상기 컨볼루션 신경망은 복수의 컨볼루션 계층들(convolutional layers)을 포함하고, 상기 복수의 컨볼루션 계층들 중 적어도 일부는 스킵 연결(skip connection)을 통해 서로 연결된다.
또 다른 실시예에서, 상기 인공지능 엔진은 제1 인공지능 엔진이고, 상기 수정 이미지는 제1 수정 이미지다. 상기 방법은: 상기 하나 이상의 의약품에 대한 주문 정보(order information) 및 상기 의약품 패키지에 대한 식별자를 수신하는 단계; 제2 인공 지능 엔진을 이용하여, 상기 제1 수정 이미지에서 상기 하나 이상의 의약품 중 개별 의약품을 검출하는 단계; 및 상기 하나 이상의 의약품을 상기 주문 정보 및 상기 의약품 패키지에 대한 식별자와 연관시키고, 상기 하나 이상의 의약품 중 개별 의약품을 구별하는 표시(indicia)를 포함하는 상기 의약품 패키지의 제2 수정 이미지를 생성하는 단계를 더 포함한다.
또 다른 실시예에서, 상기 하나 이상의 의약품 중 개별 의약품을 구별하는 표시는, 하나 이상의 바운딩 박스(bounding boxes)를 포함한다.
또 다른 실시예에서, 상기 주문 정보는 상기 의약품 패키지 내의 상기 하나 이상의 의약품에 대한 이름을 포함한다. 상기 방법은: 제3 인공 지능 엔진을 사용하여, 상기 하나 이상의 의약품에 대한 이름에 기초하여 상기 제2 수정 이미지에서 상기 하나 이상의 의약품 중 적어도 일부를 식별하는 단계를 더 포함한다. 상기 이름은 참조 데이터베이스(reference database)에서 의약품 속성과 연관된다.
또 다른 실시예에서, 상기 하나 이상의 의약품 중 적어도 일부는 상기 하나 이상의 의약품 중 부서진(fragmented) 의약품을 포함한다.
또 다른 실시예에서, 상기 방법은, 상기 제3 인공 지능 엔진을 이용하여, 상기 하나 이상의 의약품의 일부를 상기 하나 이상의 의약품에 대한 손상으로 인한 파편(debris)으로 식별하는 단계를 더 포함한다.
또 다른 실시예에서, 상기 방법은, 상기 하나 이상의 의약품에 대한 이름으로 상기 제2 수정 이미지에서 상기 하나 이상의 의약품 중 적어도 일부에 주석을 다는(annotating) 단계를 더 포함한다.
또 다른 실시예에서, 상기 방법은, 상기 이름으로 주석이 달려 있지 않은 상기 하나 이상의 의약품 중 어느 하나에 미지의 의약품 라벨(unknown drug product label)로 주석을 다는 단계를 더 포함한다.
또 다른 실시예에서, 상기 이름은 제1 이름이고, 상기 주문 정보는 상기 의약품 패키지 내의 상기 하나 이상의 의약품에 대한 의약품 코드(NDC: National Drug Codes)를 포함한다. 상기 방법은: 상기 제1 이름으로 주석이 달린 상기 하나 이상의 의약품 중 적어도 일부와 연관되지 않은 의약품 코드(NDC)를 의약품 참조 데이터(drug product reference data)와 매칭시키는(matching) 단계; 및 상기 의약품 참조 데이터와 매칭시키는 의약품 코드(NDC)를 연관시킨 이름으로 주석이 달리지 않은 상기 하나 이상의 의약품 중 어느 하나에, 의약품 참조 데이터를 기초로 제2 이름으로 주석을 다는 단계를 더 포함한다.
또 다른 실시예에서, 상기 의약품 참조 데이터는 의약품 형상, 의약품 색상, 의약품 에칭(etching), 의약품 임프린트(imprint), 의약품 중량, 및/또는 의약품 라벨(label)을 포함한다.
본 발명의 일부 실시예에서, 시스템은 프로세서; 및 상기 프로세서에 연결되고, 동작을 수행하도록 상기 프로세서에 의해 실행 가능한 메모리에 구현된 컴퓨터 판독가능 프로그램 코드를 포함하는 메모리를 포함하고, 상기 동작은: 하나 이상의 의약품을 내부에 포함하는 의약품 패키지(drug product package)의 이미지를 수신하는 단계 - 상기 이미지는 면(surface) 상에 표시되는 라벨링 콘텐츠(labeling content)를 포함함 -; 인공지능 엔진(artificial intelligence engine)을 이용하여, 상기 의약품 패키지의 면 상의 라벨링 콘텐츠를 검출하는 단계; 및 상기 의약품 패키지의 면에서 상기 라벨링 콘텐츠가 제거된 상기 의약품 패키지의 수정 이미지(modified image)를 생성하는 단계를 포함한다.
또 다른 실시예에서, 상기 동작은: 상기 의약품 패키지의 감마 보정된 이미지(gamma corrected image)를 생성하기 위해, 상기 의약품 패키지의 이미지를 수신하는 것에 응답하여 상기 의약품 패키지의 이미지에 대하여 감마 보정(gamma correction)을 수행하는 단계; 상기 의약품 패키지의 노이즈 감소된 이미지(reduced noise image)를 생성하기 위해, 상기 의약품 패키지의 감마 보정된 이미지에 대하여 가우시안 블러 노이즈 제거(gaussian blur denoising)를 수행하는 단계; 및 상기 의약품 패키지의 전경-배경 분리 이미지(foreground-background separated image)를 생성하기 위해, 상기 의약품 패키지의 노이즈 감소된 이미지에 대하여 자동 이미지 임계 처리(automatic image thresholding)를 수행하는 단계를 더 포함한다. 상기 인공지능 엔진을 이용하여, 상기 라벨링 콘텐츠를 검출하는 단계는, 상기 인공 지능 엔진을 이용하여, 상기 의약품 패키지의 전경-배경 분리 이미지의 면 상의 라벨링 콘텐츠를 검출하는 단계를 포함한다.
또 다른 실시예에서, 상기 인공지능 엔진은 컨볼루션 신경망(convolutional neural network)이다.
본 발명의 일부 실시예에서, 컴퓨터 프로그램 제품(computer program product)은, 동작을 수행하도록 프로세서에 의해 실행 가능한 매체에 구현된 컴퓨터 판독가능 프로그램 코드를 포함하는 비일시적 컴퓨터 판독가능 저장 매체(non-transitory computer readable storage medium)를 포함하고, 상기 동작은: 하나 이상의 의약품을 내부에 포함하는 의약품 패키지(drug product package)의 이미지를 수신하는 단계 - 상기 이미지는 면(surface) 상에 표시되는 라벨링 콘텐츠(labeling content)를 포함함 -; 인공지능 엔진(artificial intelligence engine)을 이용하여, 상기 의약품 패키지의 면 상의 라벨링 콘텐츠를 검출하는 단계; 및 상기 의약품 패키지의 면에서 상기 라벨링 콘텐츠가 제거된 상기 의약품 패키지의 수정 이미지(modified image)를 생성하는 단계를 포함한다.
다른 실시예에서, 상기 동작은: 상기 의약품 패키지의 감마 보정된 이미지(gamma corrected image)를 생성하기 위해, 상기 의약품 패키지의 이미지를 수신하는 것에 응답하여 상기 의약품 패키지의 이미지에 대하여 감마 보정(gamma correction)을 수행하는 단계; 상기 의약품 패키지의 노이즈 감소된 이미지(reduced noise image)를 생성하기 위해, 상기 의약품 패키지의 감마 보정된 이미지에 대하여 가우시안 블러 노이즈 제거(gaussian blur denoising)를 수행하는 단계; 및 상기 의약품 패키지의 전경-배경 분리 이미지(foreground-background separated image)를 생성하기 위해, 상기 의약품 패키지의 노이즈 감소된 이미지에 대하여 자동 이미지 임계 처리(automatic image thresholding)를 수행하는 단계를 더 포함한다. 상기 인공지능 엔진을 이용하여, 상기 라벨링 콘텐츠를 검출하는 단계는, 상기 인공 지능 엔진을 이용하여, 상기 의약품 패키지의 전경-배경 분리 이미지의 면 상의 라벨링 콘텐츠를 검출하는 단계를 포함한다.
본 발명의 실시 예들에 따른 다른 방법들, 시스템들, 제조 물품들, 및/또는 컴퓨터 프로그램 제품들은, 다음의 도면 및 상세한 설명을 검토시 당업자에게 명백해질 것이다. 이러한 부가적인 시스템들, 방법들, 제조 물품들, 및/또는 컴퓨터 프로그램 제품들 모두는 본 명세서 내에 포함되고, 본 발명 주제의 범위 내에 있고, 첨부된 청구항들에 의해 보호되는 것으로 의도된다.
실시예의 다른 특징들은 첨부 도면들과 함께 읽을 때 특정 실시예의 다음의 상세한 설명으로부터 더 쉽게 이해될 것이다.
도 1은 본 발명의 개념의 일부 실시예에 따른 인공 지능(AI: Artificial Intelligence) 보조(assisted) 의약품 패키지 분석 시스템을 포함하는 통신 네트워크(communication network)를 나타내는 블록도이다.
도 2는, 본 발명의 개념의 일부 실시예에 따른 도 1의 AI 보조 의약품 패키지 분석 시스템의 블록도이다.
도 3은 본 발명의 개념의 일부 실시예에 따른 의약품 패키지의 면의 라벨링 콘텐츠를 검출하기 위한 컨볼루션 신경망의 블록도이다.
도 4는 본 발명의 개념의 일부 실시예에 따른 도 3의 컨볼루션 신경망의 컨볼루션 계층 사이의 스킵 연결 방식(skip connection arrangement)에 대한 블록도이다.
도 5는 본 발명의 개념의 일부 실시예에 따른 의약품 패키지 분석을 수행하기 위한 동작을 나타내는 순서도이다.
도 6은 본 발명의 개념의 일부 실시예에 따른 의약품 패키지 이미지 전처리를 나타내는 블록도이다.
도 7 내지 도 10은 본 발명의 개념의 일부 실시예에 따른 의약품 패키지 분석을 수행하기 위한 추가 동작을 나타내는 흐름도이다.
도 11은 본 발명의 개념의 일부 실시예에 따른 도 1 의 AI 보조 의약품 패키지 분석 시스템에서 하나 이상의 서버를 구현하는데 사용될 수 있는 데이터 처리 시스템(data processing system)이다.
도 12는 본 발명의 개념의 일부 실시예에 따른 도 1 의 AI 보조 의약품 패키지 분석 시스템에서 사용하기 위한 소프트웨어/하드웨어 아키텍처(architecture)를 나타내는 블록도이다.
도 13 및 도 14는 본 발명의 개념의 일부 실시예에 따른 의약품 패키지 이미지에서 개별 의약품을 구별하는(distinguish) 표시를 나타내는 도면이다.
이하의 상세한 설명에서, 본 발명의 개념의 실시예들의 완전한 이해를 제공하기 위해 다수의 특정 세부사항들이 제시된다. 그러나, 본 발명이 이러한 특정 세부사항들 없이 실시될 수 있다는 것을 당업자가 이해할 것이다. 일부 경우에는, 공지된 방법들, 절차들, 컴포넌트들 및 회로들은 본 발명의 개념을 모호하게 하지 않도록 상세히 설명되지 않았다. 본 명세서에 개시된 모든 실시예는 개별적으로 구현되거나 또는 임의의 방식 및/또는 조합으로 결합될 수 있는 것으로 의도된다. 비록 구체적으로 설명되지는 않았지만, 일 실시예와 관하여 설명된 측면들은 상이한 실시예에 통합될 수 있다. 즉, 임의의 실시예의 모든 실시예 및/또는 어떤 특징들은 임의의 방식 및/또는 조합으로 결합될 수 있다.
본 명세서에서 사용되는 바와 같이, 용어 “데이터 처리 설비(data processing facility)”는 하드웨어 요소(hardware element), 펌웨어 컴포넌트(firmware component), 및/또는 소프트웨어 컴포넌트(software component)를 포함하지만, 이에 제한되지 않는다. 데이터 처리 시스템은 하나 이상의 데이터 처리 설비들로 구성될 수 있다.
본 명세서에 사용되는 용어 “의약품 패키징 시스템(drug product packaging system)”은 바이알, 병, 용기, 파우치, 블리스터카드 등을 의약품으로 채우는(fill) 자동 시스템(automated systems), 바이알, 병, 용기, 파우치, 블리스터카드 등을 의약품으로 채우는 반자동 시스템(semi-automated systems), 및 의약품 패키지를 의약품으로 채우기 위한 자동 시스템 및 반자동 시스템의 임의의 조합을 포함하지만, 이에 제한되지 않는, 어떤 유형의 의약 조제 시스템(pharmaceutical dispensing system)을 지칭한다. 의약품 패키징 시스템은 또한 뉴트라슈티컬(nutraceuticals) 및/또는 바이오슈티컬(bioceuticals)과 같은 대체 의약품(pharmaceutical alternatives)을 위한 패키징 시스템(packaging systems)을 포함한다.
본원에 사용된 용어 “의약(pharmaceutical)” 및 “의약품(medication)”은 상호교환가능하며, 사람 또는 동물 중 어느 하나에 처방되는 약제(medicaments)를 지칭한다. 의약 또는 의약품은 알약 형태, 캡슐 형태, 정제(tablet) 형태 등을 포함하지만 이에 제한되지 않는 다양한 방식으로 구현될 수 있다.
용어 “의약품(drug product)”은 알약, 캡슐, 정제, 캐플렛(caplets), 겔 캡슐(gel caps), 로렌지(lozenges) 등을 포함하지만 이에 제한되지 않는 자동 및 반자동 의약품 패키징 시스템에 의해 바이알, 병, 용기, 파우치, 블리스터카드 등 내부에 포장될 수 있는 임의의 유형의 약제를 지칭한다. 의약품은 또한 뉴트라슈티컬 및/또는 바이오슈티컬과 같은 대체 의약품을 지칭한다. 패키징 주문을 이행하기 위한 관리 기술을 포함하는 예시적인 의약품 패키징 시스템이 미국 특허 제10,492,987호에 기술되어 있으며, 개시내용이 본원에 참조로 포함된다.
용어 “의약품 패키지”는 바이알, 병, 용기, 파우치, 블리스터카드 등을 포함하지만 이에 제한되지 않는 의약품을 수용할 수 있는 임의의 유형의 물체를 지칭한다.
본 발명의 실시예들은 본원에서 하나 이상의 기계 학습 엔진들 및 인공 지능(AI) 엔진들을 포함하는 의약품 패키징 분석 엔진(drug product packaging analysis engine)의 맥락으로 설명된다. 본 발명의 실시예는 다층(multi-layer) 신경망, 딥 러닝 시스템(deep learning system), 자연어 처리 시스템(natural language processing system) 및/또는 컴퓨터 비전 시스템(computer vision system)을 포함하지만 이에 제한되지 않는 다양한 유형의 AI 시스템 및 의약품 분석 엔진의 특정 구현으로 제한되지 않는다는 것을 이해할 것이다. 또한, 다층 신경망은 인공 뉴런(artificial neurons) 또는 노드(nodes)를 포함하는 다층 인공 신경망(multi-layer artificial neural network)이고, 실제 생물학적 뉴런들을 포함하는 생물학적 신경망을 포함하지 않는다는 것을 이해할 것이다. 본 발명의 실시예는 복수의 AI 시스템들을 사용하여 구현될 수 있거나, 다양한 기능들을 더 적은 또는 단일 AI 시스템으로 결합함으로써 구현될 수 있다.
본 발명의 개념의 일부 실시예는, 예를 들어, 파우치 또는 블리스터카드와 같은, 의약품 패키지의 콘텐츠를 검증할 때, 의약품 패키지의 면 상의 콘텐츠를 라벨링하는 것은 의약품 패키지의 이미지 분석을 수행할 때 그 안에 포함된 의약품을 모호하게 할 수 있다는 인식에서 비롯된다. 본 발명의 실시예는, AI 엔진을 이용하여 의약품 패키지의 면 상의 라벨링 콘텐츠를 검출할 수 있고, 라벨링 콘텐츠가 제거된 의약품 패키지의 수정 이미지를 생성할 수 있는 AI 보조 의약품 패키지 분석 시스템을 제공하는 것이다. 라벨링 콘텐츠는 예를 들어, 상업 마케팅 정보, 환자 식별 정보, 개인 건강 관리 정보(PHI: personal healthcare information) 등을 포함할 수 있다. 의약품 패키지의 면에서 제거된 라벨링 콘텐츠에 대해, AI 시스템은 패키지에 포함된 의약품 중 하나 이상의 개별 의약품을 검출하기 위해 사용될 수 있고, 의약품 패키지에 포함된 의약품 중 개별 의약품을 구별하는 경계 박스(boundary boxes)와 같은 표시를 포함하는 제2 수정 이미지가 생성될 수 있다. 일부 실시예에서, 부서지거나 또는 심지어 손상되어 파편이 된 의약품은 표시로 구별될 수 있다. AI 시스템은 특정 의약품의 이름을 갖는 의약품 패키지에 포함된 의약품 중 하나 이상을 식별하는데 사용될 수 있다. 일부 실시예에서, 전체 의약품, 부서진 의약품, 및/또는 파편은, 예를 들어, 의약품 패키지에 포함된 의약품 중 다른 의약품에 대한 성공적인 식별 및 의약품 패키지 콘텐츠에 대한 지식과 함께, 형상, 색상, 에칭(들), 임프린트(imprint)(들), 중량, 및/또는 라벨(들)과 같은 의약품의 속성에 기초하여 AI 시스템을 사용하여 이름으로 식별될 수 있다. 식별되지 않은 의약품은, 의약품 형상, 색상, 에칭(들), 임프린트(들), 중량 및/또는 라벨(들) 정보를 포함할 수 있는 의약품 참조 데이터와 의약품 패키지에 포함된 의약품에 대한 의약품 코드(NDC) 또는 의약품 식별 번호(DIN: Drug Identification Numbers)의 매칭(matching)을 통해 또한 분석될 수 있다. 본 명세서에서 사용되는 바와 같이, NDC가 사용되어 NDC 정보 및 DIN 정보 모두를 나타낼 수 있다. 매칭될 때, 이러한 의약품은 의약품 참조 데이터 및 NDC에 기초한 이름으로 주석이 달릴 수 있다. 본 발명의 실시 예들은 사용 패키지들에 대한 구성(unit)를 채우고 검증하는 데 사용될 수도 있다(즉, 각 패키지는 단일 의약품에 대한 일회량을 포함한다). 사용 패키지의 구성은 환자 특화(patient specific)될 수 있지만, 환자 정보 없이 생산될 수 있어서, 이들은 예를 들어, 일회용 또는 비상용으로 병원 또는 장기 요양 시설(long-term care facility)에서 비품(floor stock)으로 사용될 수 있다. 이러한 파우치(또는 카드 상의 블리스터(blisters)) 각각은 라벨 정보를 가질 수 있는데, 이는 전형적인 처방 의약품 패키지와 약간 상이할 수 있거나 또는 일부분(subset)일 수 있다. 예를 들어, 사용 패키지의 구성은 의약품 이름, 복용량, NDC, 제조자, 로트 번호(lot number), 유효 기간(expiration date) 및/또는 사용 기한(BUD: beyond-use-date)을 가질 수 있다. 패키지는 또한 약국 정보 또는 사용 패키지의 구성이 제공되는 시설에 관한 정보를 포함할 수 있다.
도 1을 참조하면, 본 발명의 일부 실시예에 따른 AI 보조 의약품 패키지 분석 시스템을 포함하는 통신 네트워크(100a)는, 도시된 바와 같이 네트워크(140)를 통해 연결된(coupled) 약국 관리 시스템(PMS: pharmacy management system) 또는 호스트 시스템(110), 패키징 시스템 서버(120), 패키지 분석 엔진 서버(155), 및 하나 이상의 의약품 패키징 시스템(130a 및 130b)을 포함한다.
PMS 시스템(110)은 고객들에 대한 처방을 관리 및 조제하도록 구성될 수 있다. 본 명세서에서 사용되는 바와 같이, PMS 시스템은 약국에서 사용될 수 있거나, 일반적으로 뉴트라슈티컬 또는 바이오슈티컬 조제와 같은 다른 적용을 위한 일괄 생성 시스템(batch-generating systems)으로서 사용될 수 있다. PMS 시스템(110)은 약국, 병원, 장기 요양 시설 등과 같은 다양한 유형의 시설과 연관될 수 있다. PMS 시스템 또는 호스트 시스템(110)은 하나 이상의 제품 패키징 시스템(130a 및 130b)에 유효한 처방(valid prescription)을 전송할 수 있는 임의의 시스템일 수 있다. 패키징 시스템 서버(120)는 패키징 시스템 인터페이스 모듈(packaging system interface module)(135)을 포함할 수도 있고, 의약품 패키징 시스템들(130a 및 130b)의 동작(operation)을 관리하도록 구성될 수도 있다. 예를 들어, 패키징 시스템 서버(120)는 PMS 시스템(110)으로부터 패키징 주문(packaging orders)을 수신하고, 의약품 패키징 시스템(130a 및 130b) 중 어느 것이 특정 개별 주문(particular individual orders) 또는 일괄 주문(batches of orders)을 포장하는데 사용되어야 하는지를 식별하도록 구성될 수 있다. 또한, 패키징 시스템 서버(120)는 의약품 패키징 시스템(130a 및 130b)의 동작을 관리하도록 구성될 수 있다. 예를 들어, 패키징 시스템 서버(120)는, 의약품 패키징 시스템(130a 및 130b) 각각을 통해 이용가능한 의약품의 재고를 관리하고, 의약품 패키징 시스템(130a 및 130b) 중 하나 이상에 할당되거나 또는 등록된 의약품 조제 캐니스터(drug product dispensing canisters)를 관리하고, 일반적으로 의약품 패키징 시스템(130a 및 130b)의 동작 상태(operational status)를 관리하고, 그리고/또는 패키징 주문들, 의약품 재고, 주문 청구(order billing) 등의 상태(예를 들어, 할당, 완료 등)에 관한 보고들(reports)을 관리하도록 구성될 수 있다. 약사 또는 약사 보조원(pharmacy technician)과 같은 사용자(150)는, 유선 및/또는 무선 연결(connection)을 통해 임의의 적절한 컴퓨팅 디바이스(computing device)를 사용하여 패키징 시스템 서버(120)와 통신할 수 있다. 사용자(150)가 도 1에서 직접 연결(direct connection)을 통해 패키징 시스템 서버(120)와 통신하는 것으로 도시되어 있지만, 사용자(150)는 하나 이상의 네트워크 연결을 통해 패키징 시스템 서버(120)와 통신할 수 있다는 것을 이해할 것이다. 사용자(150)는 패키징 시스템 서버(120)와 상호작용하여(interact), 의약품 패키징 시스템들(130a 및 130b)을 동작시킬 때 패키징 시스템 서버(120)에 의해 만들어진 다양한 추천들을 승인하거나(approve) 또는 무시할(override) 수 있다. 사용자(150)는 또한 의약품 패키징 시스템들(130a 및 130b)에 대해 위에서 설명된 바와 같이 다양한 보고들의 실행을 개시할 수 있다. 도 1에는 2 개의 의약품 패키징 시스템(130a 및 130b)만 도시되어 있지만, 2 개보다 많은 의약품 패키징 시스템이 패키징 시스템 서버(120)에 의해 관리될 수 있다는 것을 이해할 것이다.
AI 보조 의약품 패키지 분석 시스템은, 의약품 패키징의 이미지에서 이질적인(extraneous) 콘텐츠를 제거하여 의약품 패키지의 콘텐츠에 대한 검증(validation)을 용이하게 하기 위한 패키지 분석 엔진 모듈(160)을 포함하는 패키지 분석 엔진 서버(155)를 포함할 수 있다. 패키지 분석 엔진 서버(155) 및 패키지 분석 엔진 모듈(160)은, 하나 이상의 면(surfaces)에서 라벨링 콘텐츠(labeling content)가 제거된 의약품 패키지의 수정 이미지를 생성하고, 의약품 패키지에 포함된 하나 이상의 의약품 중 개별 의약품을 검출하고, 그리고/또는 의약품 패키지 이미지에서 검출된 이러한 의약품을 식별하도록 구성될 수 있는 하나 이상의 AI 시스템을 나타낼 수 있다. 본 발명의 다양한 실시예에 따라, 라벨링 콘텐츠는 바이알, 파우치 및 블리스터 팩(blister packs) 등의 상부, 하부 및 측면과 같은 의약품 패키지의 복수의 면을 포함하는 의약품 패키지 상의 임의의 면으로부터 제거될 수 있다.
본 명세서에 기술된 패키징 시스템 서버(120) / 패키징 시스템 인터페이스 모듈(135) 및 패키지 분석 엔진 서버(155) / 패키지 분석 엔진 모듈(160) 사이에서 기능의 분배(division)는 일 실시예라는 것을 이해할 것이다. 본 발명의 다양한 실시예에 따라, 패키징 시스템 서버(120) / 패키징 시스템 인터페이스 모듈(135) 및 패키지 분석 엔진 서버(155) / 패키지 분석 엔진 모듈(160) 사이에서 다양한 기능 및 성능이 이동될 수 있다. 또한, 일부 실시예에서, 패키징 시스템 서버(120) / 패키징 시스템 인터페이스 모듈(135) 및 패키지 분석 엔진 서버(155) / 패키지 분석 엔진 모듈(160)은 단일의 논리적 및/또는 물리적 엔티티(entity)로서 통합될(merged) 수 있다.
네트워크(140)는 의약품 패키징 시스템(130a 및 130b), PMS 시스템(110) 및 패키징 시스템 서버(120)를 서로 연결시킨다(couples). 네트워크(140)는 인터넷 또는 다른 공용으로 액세스가능한 네트워크와 같은 글로벌 네트워크일 수 있다. 네트워크(140)의 다양한 요소들은 광역 네트워크, 근거리 네트워크, 인트라넷, 및/또는 일반 대중에 의해 액세스 가능하지 않을 수 있는 다른 사설 네트워크에 의해 상호연결될(interconnected) 수 있다. 따라서, 통신 네트워크(140)는 공용 및 사설 네트워크 또는 가상 사설 네트워크(VPN: virtual private network)의 조합을 나타낼 수 있다. 네트워크(140)는 무선 네트워크, 유선 네트워크일 수 있거나, 또는 무선 네트워크와 유선 네트워크의 조합일 수 있다. 일부 실시예에서, 패키지 분석 엔진 서버(155)는 또한 네트워크(140)에 연결될 수 있다.
일부 실시예에서, 패키지 분석 엔진(155) 및 패키지 분석 엔진 모듈(160)을 통해 제공되는 AI 보조 의약품 패키지 분석 서비스는 클라우드 서비스(cloud service)로서 구현될 수 있다. 일부 실시예에서, AI 보조 의약품 패키지 분석 서비스는 레스트풀 웹 서비스(RESTful Web service: Representational State Transfer Web Service)로서 구현될 수 있다.
도 1은 AI 보조 의약품 패키지 분석 시스템을 포함하는 예시적인 통신 네트워크를 도시하지만, 본 발명의 주제의 실시예는 이러한 구성으로 제한되지 않고, 본 명세서에 기술된 동작들을 수행할 수 있는 임의의 구성을 포함하도록 의도되는 것을 이해할 것이다.
상술된 바와 같이, 패키지 분석 엔진 서버(155) 및 패키지 분석 엔진 모듈(160)은, 면(surfaces)에서 라벨링 콘텐츠(labeling content)가 제거된 의약품 패키지의 수정 이미지를 생성하고, 의약품 패키지에 포함된 하나 이상의 의약품 중 개별 의약품을 검출하고, 그리고/또는 의약품 패키지 이미지에서 검출된 이러한 의약품을 식별하도록 구성될 수 있는 하나 이상의 AI 시스템을 나타낼 수 있다. 도 2는, 의약품 패키지 이미지에서 의약품 패키지 이미지 내 포함된 하나 이상의 의약품 중 개별 의약품을 검출하고, 그리고/또는 의약품 패키지 이미지에서 검출된 이러한 의약품을 식별하는데 사용될 수 있는, 기계 학습 시스템(machine learning system)과 같은 AI 시스템을 구현하기 위한 패키지 분석 엔진 모듈(160)의 블록도이다. 도 2의 AI 시스템은, 의약품 패키지 이미지에서 의약품 패키지 이미지 내 포함된 하나 이상의 의약품 중 개별 의약품을 검출하고, 의약품 패키지 이미지에서 검출된 이러한 의약품을 식별하는 단일 AI 시스템으로서 구현될 수 있다. 다른 실시예에서, 도 2의 AI 시스템의 아키텍처는 복사되어(duplicated) 별도의 AI 시스템을 형성하여, 각각 의약품 패키지 이미지에서 의약품 패키지 이미지 내 포함된 하나 이상의 의약품 중 개별 의약품을 검출하고, 의약품 패키지 이미지에서 검출된 이러한 의약품을 식별할 수 있다. 도 2에 도시된 바와 같이, 패키지 분석 엔진 모듈(160)은 의약품 패키지 이미지에서 의약품을 검출 및/또는 식별하는 새로운 데이터를 처리하기 위해 사용되는 모듈 및 트레이닝 모듈(training modules) 모두를 포함할 수 있다. 패키지 분석 엔진 모듈(160)의 트레이닝 부분에 사용되는 모듈은, 트레이닝 데이터 모듈(205), 피처링 모듈(featuring module)(225), 라벨링 모듈(230), 및 기계 학습 엔진(240)을 포함한다.
트레이닝 데이터(205)는 하나 이상의 의약품을 각각 포함하는 의약품 패키지의 하나 이상의 이미지를 포함할 수 있다. 의약품 패키지(S)는, 상업 마케팅 정보, 환자 식별 정보, 및/또는 개인 건강 관리 정보(PHI)를 포함할 수 있지만 이에 제한되지 않는, 면 상의 라벨링 콘텐츠를 포함할 수 있다. 상업 마케팅 정보는 예를 들어 로고(logo) 및/또는 사업자 이름(business name)을 포함할 수 있다. 환자 식별 정보는, 예를 들어, 환자 이름, 환자 전화 번호, 환자 주소, 및/또는 환자 식별 번호를 포함할 수 있다. 개인 건강 관리 정보는, 예를 들어, 의약품 패키지에 포함된 하나 이상의 의약품의 이름, 하나 이상의 의약품 각각에 대한 투여 시간, 하나 이상의 의약품과 연관된 하나 이상의 바코드, 처방, 환자 계정, 식별 번호, 및/또는 기타 정보를 포함할 수 있다. 일부 실시예에서, 의약품 패키지 이미지는, 도 3을 참조하여 아래에서 설명되는 신경망과 같은 AI 시스템의 사용을 통해 면 상에 포함된 라벨링 콘텐츠의 적어도 일부가 제거되도록 수정될 수 있다. 일부 실시예에서, 면 상의 라벨링 콘텐츠의 적어도 일부가 제거된, 수정된 의약품 패키지 이미지에서 의약품 패키지 이미지 내 포함된 하나 이상의 의약품 중 개별 의약품을 검출하기 위해, 트레이닝 데이터(205)는 의약품 패키지에 포함된 하나 이상의 의약품에 대한 주문 정보 및/또는 의약품 패키지에 대한 식별자를 더 포함할 수 있다. 또 다른 실시예에서, 의약품 패키지 이미지에서 검출된 이들 의약품을 식별하기 위해, 트레이닝 데이터(205)에 포함된 주문 정보는 의약품 패키지 내의 하나 이상의 의약품에 대한 이름을 포함할 수 있다. 피처링 모듈(225)은 예를 들어, 종속 변수(들)로 간주될 수 있는 라벨링 콘텐츠가 제거된 의약품 패키지 이미지에서 하나 이상의 의약품을 검출 및/또는 식별하기 위해 패키지 분석 엔진 모듈(160)에 의해 사용되는 개별 독립 변수를 식별하도록 구성된다. 예를 들어, 트레이닝 데이터(205)는 일반적으로 처리되지 않거나(unprocessed) 포맷될(formatted) 수 있고, 의약품 및/또는 의약품 패키징 정보에 더하여 추가 정보를 포함할 수 있다. 예를 들어, 트레이닝 데이터(205)는 피처링 모듈(225)에 의해 필터링될(filtered) 수 있는 계정 코드(account codes), 사업자 주소 정보(business address information) 등을 포함할 수 있다. 트레이닝 데이터(205)로부터 추출된 피처(features)는 속성(attributes)으로 지칭될 수 있고, 피처의 수는 차수(dimension)로 지칭될 수 있다. 라벨링 모듈(230)은 정의된 라벨을 트레이닝 데이터에 그리고 검출된 및/또는 식별된 의약품에 할당하여 입력 피처 및 생성된 출력 모두에 대해 일관된 명명 규칙(consistent naming convention)을 보장하도록 구성될 수 있다. 기계 학습 엔진(240)은 라벨링 모듈(230)에 의해 제공된 라벨들을 포함하는, 피처링된(featured) 트레이닝 데이터(205) 모두를 처리할(process) 수 있고, 피처링된 입력 데이터 및 라벨링된 입력 데이터와 생성된 출력들 간의 정량적 관계(quantitative relationship)을 설정하기 위해 다수의 기능들(functions)을 테스트하도록(test) 구성될 수 있다. 기계 학습 엔진(240)은 생성된 출력들에 대한 다양한 입력 데이터 피처들의 효과를 평가하기 위해 모델링 기술들(modeling techniques)을 사용할 수 있다. 이러한 효과들은 피처링된 입력 데이터 및 라벨링된 입력 데이터와 생성된 출력들 간의 정량적 관계를 튜닝(tune) 및 리파인(refine)하기 위해 사용될 수 있다. 기계 학습 엔진(240)에 의해 생성된 피처링된 입력 데이터 및 라벨링된 입력 데이터 사이의 튜닝되고 리파인된 정량적 관계는 AI 엔진(245)에서의 사용을 위해 출력된다. 기계 학습 엔진(240)은 기계 학습 알고리즘(machine learning algorithm)으로 지칭될 수 있다.
의약품 패키지 이미지에서 의약품 패키지에 포함된 하나 이상의 의약품의 개별 의약품을 검출하고, 그리고/또는 의약품 패키지 이미지에서 검출된 이들 의약품을 식별하는데 사용되는 모듈은, 새로운 데이터 모듈(255), 피처링 모듈(265), AI 엔진 모듈(245), 및 의약품 패키지 처리(processing) 및 분석 모듈(275)을 포함한다. 새로운 데이터(255)가 트레이닝 목적보다는 새로운 의약품 패키지의 분석을 위해 사용될 것이라는 점을 제외하고, 새로운 데이터(255)는 콘텐츠 및 형식(form)에서 트레이닝 데이터(205)와 동일한 데이터/정보일 수 있다. 마찬가지로, 피처링 모듈(225)이 트레이닝 데이터(205)에 대해 수행하는(performs) 것처럼, 피처링 모듈(265)은 새로운 데이터(255)에 대해 동일한 기능을 수행한다. AI 엔진(245)은, 사실상, 출력 의약품 패키지 콘텐츠 분석과 피처링된 입력 데이터 및 라벨링된 입력 데이터 사이의 결정된 정량적 관계의 형태로 기계 학습 엔진(240)에 의해 생성될 수 있다. AI 엔진(245)은, 일부 실시예에서, AI 모델로 지칭될 수 있다. AI 엔진(245)은, 의약품 패키지에 대한 식별자 및/또는 주문 정보와 하나 이상의 의약품을 연관시키면서, 내부에 포함된 하나 이상의 의약품의 개별 의약품을 구별하는 표시를 포함하는 의약품 패키지의 수정 이미지를 생성하도록 구성될 수 있다. 표시는 제한되는 것은 아니나 경계 박스 또는 다각형, 원, 평면 및 곡면(straight and curved surfaces)을 포함하는 폐쇄형, 곡면만을 포함하는 폐쇄형, 및/또는 하나 이상의 의약품들 사이의 경계를 정하는 기호 또는 선을 포함하는 다양한 방식으로 구현될 수 있다. 일부 실시예에서, 표시는 의약품의 형상에 근접하는 형상을 취할 수 있다. AI 엔진(245)은 또한 그들의 이름들에 기초하여 의약품 중 하나 이상을 식별하도록 구성될 수 있다. AI 엔진(245)은, 제한되는 것은 아니나 회귀 기법, 신경망 기법, 자기 회귀 누적 이동 평균(ARIMA: Autoregressive Integrated Moving Average) 기법, 딥 러닝 기법, 선형 판별 분석 기법, 의사결정 트리 기법, 나이브 베이즈 기법, K-최근접 이웃 기법, 학습 벡터 양자화 기법, 서포트 벡터 머신 기법, 및/또는 배깅(bagging)/랜덤(random) 포레스트(forest) 기법을 포함하는 본 발명의 다른 실시예에 따라 다양한 모델링 기법을 사용하여, 의약품 패키지에 포함된 하나 이상의 의약품 중 개별 의약품을 검출하고, 의약품 패키지 이미지에서 검출된 이러한 의약품을 식별할 수 있다.
의약품 패키지 처리 및 분석 모듈(275)은, 하나 이상의 의약품에 대한 명칭과 함께 경계 박스와 같은 표시로 식별된 하나 이상의 의약품을 가지는 수정된 의약품 패키지 이미지를 의약품 패키지 검증 시스템(drug product package validation system)에 출력하도록 구성될 수 있다.
상술된 바와 같이, 패키지 분석 엔진 서버(155) 및 패키지 분석 엔진 모듈(160)은, 면에서 라벨링 콘텐츠가 제거된 의약품 패키지의 수정 이미지를 생성하도록 구성될 수 있는 하나 이상의 AI 시스템을 나타낼 수 있다. 도 3은, 면에서 라벨링 콘텐츠가 제거된 의약품 패키지들의 수정 이미지들을 생성하는데 사용될 수 있는, 신경망으로 AI 시스템을 구현하기 위한 패키지 분석 엔진 모듈(160)의 블록도이다. 도 3의 예시적인 실시예에서, 신경망은 컨볼루션 신경망이다. 그러나, 본 발명의 다른 실시예에 따라, 의약품 패키지 이미지에서 라벨링 콘텐츠를 제거하기 위한 AI 시스템이 또한 완전 연결 신경 네트워크(fully connected neural network)로서 구현될 수 있다는 것을 이해할 것이다. 그러나, 컨볼루션 신경망은, 신경망 계층에서 관리하기 위한 다수의 픽셀(pixels) 및 이에 따른 다수의 가중치(weights)로 인한 이미지를 처리 또는 분류시 유용할 수 있다. 컨볼루션 신경망은 컨볼루션(convolution)을 통해 제1 계층에서 메인 이미지 매트릭스(main image matrix)를 더 낮은 차수를 갖는 매트릭스로 감소시킬 수 있고, 이는 사용되는 다수의 가중치를 감소시키고 트레이닝 시간(training time)에 대한 영향을 감소시킨다.
이제 도 3을 참조하면, 이미지 전처리기(image pre-processor)(305)는 면 상에 표시된 라벨링 콘텐츠를 포함하는 의약품 패키지의 하나 이상의 이미지를 수신할 수 있다. 도 6을 참조하여 후술하는 바와 같이, 이미지 전처리기는, 이미지 데이터에 대해, 예를 들어, 감마 보정, 노이즈 감소(noise reduction) 및/또는 이미지 분할(image segmentation)을 포함하는 다양한 보정(corrections)을 수행할 수 있다. 전처리된(pre-processed) 의약품 패키지 이미지는 AxBx3차수의 매트릭스에 의해 표현되는 이미지일 수 있으며(여기서 숫자 3 은 색상 적색, 녹색 및 청색을 나타낸다.), 컨볼루션 신경망(310)에 제공될 수 있다. 도 3 에 도시된 바와 같이, 컨볼루션 신경망(310)은 제1 및 제2 풀링 계층(325, 335)과 함께 제1 및 제2 컨볼루션 계층(320, 330)을 포함한다. 컨볼루션 계층들(320, 330) 각각은 입력 매트릭스(input matrix)보다 작은 차수(dimension)의 매트릭스이고, 동일한 차수를 가지는 입력 매트릭스의 일부와 컨볼루션 연산(convolution operation)을 수행하도록 구성될 수 있다. 대응하는 요소들(elements)의 곱들(products)의 합(sum)은 컨볼루션 계층(convolutional layer)의 출력(output)이다. 컨볼루션 계층들 각각의 출력은 또한, 양수는 변경되지 않고 0 아래의 임의의 수가 0으로 변환되는(converted) 정류 선형 유닛 연산(rectified linear unit operation)을 통해 처리될 수 있다. 컨볼루션 신경망(310)은 제1 및 제2 풀링(pooling) 계층(325 및 335)을 더 포함한다. 풀링 계층들(325 및 335)은 각각 다운 샘플링 연산(down sampling operation)을 수행함으로써 컨볼루션 계층들(320 및 330)의 출력을 각각 필터링하도록(filter) 구성될 수 있다. 풀링 연산(pooling operation) 또는 필터(filter)의 크기(size)는 입력 피처 맵(input feature map)의 크기보다 더 작다. 일부 실시예에서, 그것은 2 개 픽셀들(pixels)의 스트라이드(stride)로 적용된 2x2 픽셀들이다. 이는 풀링 계층이 2 의 팩터(factor)에 의해 각각의 피처 맵의 크기를 항상 감소시킬 것이고, 예를 들어, 각각의 차수는 절반으로 되어, 각각의 피처 맵에서의 값들 또는 픽셀들의 수를 1/4 크기로 감소시킨다. 예를 들어, 6x6(36 픽셀들)의 피처 맵에 적용된 풀링 계층은 3x3(9 픽셀들)의 피처 맵으로 풀링된 출력(output pooled feature map)을 초래할 것이다. 최종 출력 계층은 정상적인 완전 연결 신경망 계층(normal fully-connected neural network layer)(340)이며, 이는 면 상의 라벨링 콘텐츠의 적어도 일부가 제거된 수정된(modified) 의약품 패키지 이미지(345)로 출력을 제공한다.
본 발명의 일부 실시예에서, 컨볼루션 신경망(310)는 컨볼루션 계층들(320, 330) 간에 스킵 연결(skip connections)이 이용되는 레지듀얼 신경망(residual neural network)일 수 있다. 스킵 연결의 일 예가 도 4에 도시되어 있다. 구체적으로, 컨볼루션 신경망(convolutional neural network)은 이전 컨볼루션 계층(convolutional layer)의 출력 및 이전 컨볼루션 계층에 대한 입력 모두를 입력으로 수신하는 컨볼루션 계층을 포함한다.
예시의 목적을 위해, 2 개의 컨볼루션 계층(320 및 330)이 도 3의 예시적인 컨볼루션 신경망(310)에 도시되어 있지만, 본 발명의 다양한 실시예에 따른 컨볼루션 신경망은 다수의 컨볼루션 계층들을 포함할 수 있고, 일부 실시예에서 100 개의 계층들을 초과할 수 있는 것을 이해할 것이다.
도 3 및 도 7 내지 도 10은, 본 발명의 일부 실시예에 따른, 내부의 콘텐츠의 검증들을 용이하게 하기 위해 라벨링 콘텐츠의 제거를 포함하는 의약품 패키지 분석을 수행하기 위한 동작들을 예시하는 흐름도이다. 이제 도 5를 참조하면, 컨볼루션 신경망(310)이 면 상에 표시되는 라벨링 콘텐츠를 갖는 의약품 패키지의 이미지를 수신하는 블록(500)에서 동작들이 시작한다. 라벨링 콘텐츠는, 상업 마케팅 정보, 환자 식별 정보 및/또는 개인 건강 관리 정보(PHI)를 포함할 수 있으나, 이에 제한되지 않는다. 상업 마케팅 정보는 예를 들어 로고 및/또는 상호를 포함할 수 있다. 환자 식별 정보는, 예를 들어, 환자 이름, 환자 전화 번호, 환자 주소, 및/또는 환자 식별 번호를 포함할 수 있다. 개인 건강 관리 정보는 예를 들어, 의약품 패키지에 포함된 하나 이상의 의약품에 대한 이름, 하나 이상의 의약품 각각에 대한 처방된 투여 시간(time of administration), 또는 상기 하나 이상의 의약품과 연관된 하나 이상의 바코드, 처방(prescription order), 환자 계정, 식별 번호, 및/또는 기타 정보를 포함할 수 있다. 블록(505)에서, 의약품 패키지의 면 상의 라벨링 콘텐츠는 컨볼루션 신경망(310)을 사용하여 검출될 수 있다. 블록(510)에서 컨볼루션 신경망(310)은 면에서 라벨링 콘텐츠가 제거된 의약품 패키지의 수정 이미지를 생성할 수 있다.
전술한 바와 같이, 의약품 패키지 이미지는 이미지 데이터에 대한 다양한 보정을 수행하기 위해 전처리(pre-processing)를 수행할 수 있다. 이제 도 6 및 7을 참조하면, 감마 보정(gamma correction) 모듈(605)이 의약품 패키지 이미지에 대해 감마 보정을 수행하여 감마 보정된 이미지를 생성하는 블록(700)에서 동작들이 시작한다. 하나 이상의 카메라들은 이미지를 더 어둡게 할 수 있고, 감마 보정은 컨볼루션 신경망(310)이 이미지에 표시되는 다양한 요소들(elements)의 에지들(edges)을 더 잘 인식하게 하기 위해 이미지를 밝게 할 수 있다. 감마 보정은 휘도(luminance) 0에서 무한 도함수(infinite derivative)를 갖는 것을 피하기 위해 선형일 수 있는 낮은 광도(luminosities)를 제외하고, 파워 로우 변환(power law transform)으로서 구현될 수 있다. 이는 SDR 이미지들을 인코딩하기 위해 적용되는 기존의 비선형성(nonlinearity)이다. 지수(exponent) 또는 “감마” 는 0.45 의 값을 가질 수 있지만, 곡선의 하부 부분의 선형 부분은 최종 감마 보정 함수가 0.5 의 거듭제곱 지수에 더 가깝게 할 수 있으며, 즉, 제곱근 변환(square root transform); 따라서, 감마 보정은 휘도 지각(brightness perception)의 드브리스 로즈 법칙(DeVries-Rose law)을 따를 수 있다. 블록(705)에서, 가우시안 블러 노이즈 제거(gaussian blur denoising) 모듈(610)은 감마 보정된 이미지에 대해 가우시안 블러 노이즈 제거를 수행하여 노이즈 감소된 이미지를 생성하는데 사용된다. 가우시안 블러 노이즈 제거(gaussian blur denoising) 모듈 또는 필터(filter)(610)는 선형 필터일 수 있다. 그것은 이미지를 블러링하고(blur) 그리고/또는 노이즈를 감소시키기 위해 사용될 수 있다. 두 개의 가우시안 블러 노이즈 제거 필터(610)는 출력이 “언샤프 마스킹(unsharp masking)”(에지 검출)을 위해 차감되도록(subtracted) 사용될 수 있다. 가우시안 블러 노이즈 제거 모듈 또는 필터(610)는 에지를 블러링하고 콘트라스트(contrast)를 감소시킬 수 있다. 메디안 필터(Median filter)는 이미지 내의 노이즈를 감소시키는 방법으로서 사용될 수 있는 비선형 필터(non-linear filter)이다. 블록(710)에서, 자동 이미지 임계 처리(automatic image thresholding) 모듈(615)은 전경-배경 분리 이미지(foreground-background separated image)를 생성하기 위해 노이즈 감소된 이미지에 대한 자동 이미지 임계 처리를 수행할 수 있다. 임계 처리는 이미지 분할 애플리케이션들(segmentation applications)에서 사용되는 기법이다. 임계 처리는 그레이-레벨 분포(gray-level distribution)에 기초하여 배경으로부터 이미지에서 관심 객체들(objects of interest)을 분리하기 위해 원하는 그레이-레벨 임계값(gray-level threshold value)의 선택을 포함한다. 오츠 방식(Otsu method)은 이미지의 그레이 값(gray value)에만 의존하는 글로벌 임계 처리의 유형이다. 오츠 방식은 그레이 레벨 히스토그램(gray level histogram)을 계산하는 것을 포함하는 글로벌 임계 처리 선택 방법이다. 오직 1 차원(one dimension)으로 적용될 때, 이미지는 충분히 분할되지 않을 수도 있다. 각각의 픽셀의 그레이-레벨 임계치(gray-level threshold)뿐만 아니라 픽셀을 둘러싼 주변과의 공간 상관 정보(spatial correlation information)를 기초로 하는 2 차원 오츠 방식(two-dimensional Otsu method)이 사용될 수 있다.  결과적으로, 오츠 방식은 노이즈 이미지들(noisy images)에 적용될 때 만족스러운 분할을 제공할 수 있다. 도 6의 전처리 모듈들로부터의 출력 이미지는 도 3의 컨볼루션 신경망(310)과 같은 의약품 패키지 수정 엔진에 적용될 수 있다.
이제 도 8을 참조하면, 블록(800)에서, 면에서 라벨링 콘텐츠가 제거된 수정 이미지에서 하나 이상의 의약품 중 개별 의약품을 검출하여, 의약품 패키지 이미지가 추가로 처리되어 내부의 콘텐츠의 검증을 용이하게 할 수 있다. 검출은 도 2와 관련하여 전술한 AI 엔진(245)과 같은 AI 엔진을 사용하여, 의약품 패키지에 대한 식별자 및/또는 의약품 패키지에 포함된 하나 이상의 의약품에 대한 주문 정보와 함께 면에서 라벨링 콘텐츠가 제거된 수정된 의약품 패키지 이미지에 기초하여 수행될 수 있다.  블록(805)에서, AI 엔진은, 의약품을 주문 정보 및 의약품 패키지에 대한 식별자와 연관시키고, 의약품 중 개별 의약품을 구별하는 표시(indicia)를 포함하는 의약품 패키지의 제2 수정 이미지(modified image)를 생성할 수 있다. 일부 실시예에서, 바운딩 박스들은, 예를 들어, 도 13에 도시된 바와 같이 의약품 중 개별 의약품을 구별하는 표시로 사용될 수 있으며, 이는 특정 의약품의 위치(location)를 식별하기 위한 표시(indicia)로 원(circle)의 사용을 예시한다.
이제 도 9를 참조하면, 블록(900)에서 하나 이상의 의약품에 대한 이름에 기초하여 검출된 의약품 중 개별 의약품을 갖는 제2 수정 이미지에서 하나 이상의 의약품 중 적어도 일부를 식별하여 내부의 콘텐츠의 검증을 용이하게 하도록 의약품 패키지 이미지는 추가로 처리될 수 있다. 식별은, 의약품 제품 패키지에서 하나 이상의 의약품의 이름을 포함하는 주문 정보 및 검출된 하나 이상의 의약품 중 개별 의약품을 가지는 수정된 의약품 패키지 이미지에 기초하여 도 2와 관련하여 전술한 AI 엔진(245)과 같은 AI 엔진을 이용하여 수행될 수 있다. 본 발명의 일부 실시예에 따르면, 이름은 참조 데이터베이스(reference database) 내의 의약품 속성(drug product attributes)과 연관될 수 있다. 이러한 속성들은 의약품 형상, 컬러(color), 에칭(etching), 임프린트(imprint), 가중치(weight) 및/또는 라벨(label)을 포함할 수 있지만, 이에 제한되지 않는다. 도 14는 이름 “의약품 A(Medication A)”로 주석이 달린 도 13의 의약품을 예시한다. 일부 실시예에서, 식별된 하나 이상의 의약품은 알약(pill) 또는 정제의 일부와 같이 부서진 의약품을 포함할 수 있다. 식별된 하나 이상의 의약품은, 예를 들어, 의약품의 전부 또는 일부를 분말(powder)로 줄이는 의약품에 대한 손상으로부터 야기되는 파편에 대한 식별을 더 포함할 수 있다. 패키지 파편 및 의약품의 일부를 식별하는 것과 함께 이름에 의한 의약품 패키지 이미지 내의 하나 이상의 의약품에 대한 식별은, 의약품 패키지의 콘텐츠를 검증하는 데 사용하기 위해 의약품 패키지에서 의약품의 카운트(count)를 생성하는 것을 용이하게 할 수 있다. 의약품 패키지 이미지는 하나 이상의 의약품에 대해 결정된 이름으로 주석이 달릴 수 있지만, AI 엔진이 의약품 패키지 이미지에서 하나 이상의 의약품에 대한 이름을 결정할 수 없는 상황이 있을 수 있다. 이름을 결정할 수 없는 의약품이 하나 또는 몇 개만 있는 경우, 이러한 의약품은, 새롭거나 이전에 볼 수 없었던 국가 의약품 코드(NDC: National Drug Code) 또는 임시 이름(temporary name)으로 주석이 달릴 수 있다. 일부 실시예에서, 도 10을 참조하여 후술되는 것과 같이, 이러한 의약품들의 이름들을 결정하기 위해 추가적인 동작들이 수행될 수 있다.
이제 도 10을 참조하면, 도 9의 AI 시스템 동작들을 사용하여 이름에 의해 식별되지 않은 의약품의 이름을 결정하기 위한 동작들이 블록(1000)에서 시작하며, 예를 들어, 의약품 형상, 색상, 에칭(etching), 및/또는 라벨 정보와 같은 의약품 참조 데이터 및 명명된 의약품의 임의의 것과 연관되지 않지만 주문 정보에 포함된 국가 의약품 코드(NDC) 사이에서 매칭 동작이 수행된다. 블록(1005)에서, 의약품 패키지 이미지 내의 명명되지 않은 의약품 중 임의의 것이 주문에 포함된 NDC와 연관된 형상, 컬러, 에칭(들), 임프린트(들), 가중치, 및/또는 라벨 정보와 매칭되는지 여부에 대한 결정이 이루어질 수 있다. 매칭(match)이 있는 경우, 명명되지 않은(un-name) 의약품은 연관된 NDC에 대응하는 이름이 할당될 수 있다.
이제 도 11을 참조하면, 본 발명의 실시예에 따라, 도 1의 의약품 패키지 이미지 분석 엔진(image analysis engine) 서버(155)를 구현하는데 사용될 수 있는 데이터 처리 시스템(1100)은, 프로세서(1108)와 통신하는 메모리(1106), 키보드 또는 키패드, 바코드 스캐너, 또는 RFID 리더와 같은 입력 장치(들)(1102), 디스플레이(1104)를 포함한다. 데이터 처리 시스템(1100)은 프로세서(1108)와 통신하는 저장 시스템(1110), 스피커(1112) 및 입력/출력(I/O) 데이터 포트(들)(1114)를 더 포함할 수 있다. 프로세서(1108)는, 예를 들어, 상업적으로 이용가능한 또는 맞춤형 마이크로프로세서(custom microprocessor)일 수 있다. 저장 시스템(1110)은 플로피 디스크, ZIP 드라이브, 하드 디스크 등과 같은 이동식 및/또는 고정식 매체(media)뿐만 아니라 RAMDISK 와 같은 가상 저장소(virtual storage)를 포함할 수 있다. 입력/출력(I/O) 데이터 포트(들)(1114)는, 데이터 처리 시스템(1100)과 다른 컴퓨터 시스템 또는 네트워크(예를 들어, 인터넷) 사이에서 정보를 전송하는데 사용될 수 있다. 이러한 컴포넌트들(components)은, 많은 기존의 컴퓨팅 디바이스들에서 사용되는 것들과 같은 기존의 컴포넌트들일 수 있고, 기존의 동작들에 관하여, 그들의 기능은 당업자들에게 일반적으로 알려져 있다. 메모리(1106)는, 의약품 패키지의 면으로부터 이질적인(extraneous) 라벨링 콘텐츠의 AI 보조 제거(assisted removal) 및/또는 내부에 포함된 하나 이상의 의약품의 검출 및 식별을 용이하게 하도록 컴퓨터 판독가능 프로그램 코드(computer readable program code)(1116)로 구성되어, 본 발명의 일부 실시예에 따라, 의약품 패키지 콘텐츠를 검증할 수 있다.
도 12는, 도 1의 의약품 패키지 분석 엔진 서버(155) 및 도 11의 데이터 처리 시스템(1100)과 같은 데이터 처리 시스템의 실시예에서 각각 사용될 수 있는 메모리(1205)를 도시하며, 본 발명의 일부 실시예에 따른 의약품 패키지 콘텐츠에 대해 검증하기 위해, 의약품 패키지의 면으로부터 이질적인 라벨링 콘텐츠의 AI 보조 제거(assisted removal) 및/또는 내부에 포함된 하나 이상의 의약품의 검출 및 식별을 용이하게 한다. 메모리(1205)는 본원에 기술된 바와 같이 의약품 패키지 분석 엔진 서버(155) 및 의약품 패키지 분석 엔진 모듈(160)의 동작을 용이하게 하는데 사용되는 데이터 및 소프트웨어를 포함하는 하나 이상의 메모리 디바이스들(memory devices)를 나타낸다. 메모리(1205)는 다음과 같은 유형의 디바이스들을 포함할 수 있지만 이에 제한되지 않는다: 캐시, ROM, PROM, EPROM, EEPROM, 플래쉬(flash), SRAM, 및 DRAM. 도 12에 도시된 바와 같이, 메모리(1205)는 다음의 5개 이상 카테고리의 소프트웨어 및/또는 데이터를 포함할 수 있다: 운영 체제(operating system)(1210), 의약품 패키지 처리 및 분석 엔진(drug product package processing and analysis engine) 모듈(1225) 및 통신(communication) 모듈(1240). 특히, 운영 체제(1210)는 데이터 처리 시스템의 소프트웨어 및/또는 하드웨어 자원을 관리할 수 있고, 프로세서에 의한 프로그램의 실행을 조정할(coordinate) 수 있다. 의약품 패키지 처리 및 분석 엔진 모듈(112)은 기계 학습 엔진(machine learning engine) 모듈(1230) 및 AI 엔진 모듈(1235)을 포함할 수 있다. 기계 학습 엔진 모듈(1230)은, 도 5 및 도 7 내지 도 10의 흐름도와 기계 학습 엔진(240), 컨볼루션 신경망(310)에 관해 전술한 하나 이상의 동작을 수행하도록 구성될 수 있다. AI 엔진 모듈(1225)은 도 5 및 도 7 내지 도 10의 흐름도와 AI 엔진(245), 컨볼루션 신경망(310)과 관련하여 전술한 하나 이상의 동작들을 수행하도록 구성될 수 있다. 통신 모듈(1240)은, 예를 들어, 의약품 패키지 분석 엔진 서버(155)와, 예를 들어, 의약품 패키지 검증 시스템 사이의 통신을 지원하도록(support) 구성될 수 있다.
도 11 내지 도 12는 본 발명의 일부 실시예에 따른 도 1의 의약품 패키지 분석 엔진 서버(155) 및 도 11의 데이터 처리 시스템(1100)과 같은 데이터 처리 시스템들에서 각각 사용될 수 있는 하드웨어/소프트웨어 아키텍처들을 나타내지만, 이는 이러한 구성에 제한되지 않고, 본 명세서에 설명된 동작들을 수행 가능한 임의의 구성을 포괄하는 것으로 의도된다는 것을 이해할 것이다.
도 1 내지 11, 13, 및 14와 관하여 위에서 논의된 데이터 처리 시스템들의 동작들을 수행하기 위한 컴퓨터 프로그램 코드는, 개발 편의상 파이썬(Python), 자바(Java), C, 및/또는 C++와 같은 하이-레벨 프로그래밍 언어(high-level programming language)로 기록될 수 있다. 또한, 본 발명의 동작들을 수행하기 위한 컴퓨터 프로그램 코드는 또한 인터프리트 언어들(interpreted languages)과 같은, 그러나 이에 제한되지 않는 다른 프로그래밍 언어들로 기록될 수 있다. 일부 모듈들 또는 루틴들은 성능 및/또는 메모리 사용을 향상시키기 위해 어셈블리 언어 또는 심지어 마이크로-코드(micro-code)로 기록될 수 있다. 프로그램 모듈들 중 일부 또는 전부의 기능은 또한 이산 하드웨어 컴포넌트들(discrete hardware components), 하나 이상의 주문형 집적 회로 (ASIC: application specific integrated circuits), 또는 프로그래밍된 디지털 신호 프로세서(programmed digital signal processor) 또는 마이크로컨트롤러를 사용하여 구현될 수 있다는 것을 더 이해할 것이다.
또한, 도 1의 의약품 패키지 분석 엔진 서버(155) 및 도 11의 데이터 처리 시스템(1100)의 기능은 본 발명의 다양한 실시예에 따라 단일 프로세서 시스템, 멀티 프로세서(multi-processor) 시스템, 멀티 코어(multi-core) 프로세서 시스템, 또는 심지어 독립형(stand-alone) 컴퓨터 시스템의 네트워크로 구현될 수 있다. 이러한 프로세서/컴퓨터 시스템들 각각은 “프로세서” 또는 “데이터 처리 시스템”으로 지칭될 수 있다.
도 1 내지 도 13과 관련하여 본 명세서에서 설명된 데이터 처리 장치는, 본 명세서에 설명된 본 발명의 일부 실시예에 따른 의약품 패키지 콘텐츠를 검증하기 위해, 의약품 패키지의 면으로부터 이질적인 라벨링 콘텐츠의 AI 보조 제거 및/또는 내부에 포함된 하나 이상의 의약품의 검출 및 식별을 용이하게 하도록 사용될 수 있다. 이러한 장치는, 소프트웨어, 펌웨어 및/또는 하드웨어의 임의의 적합한 조합을 사용하여 데이터를 수신, 전송, 처리 및 저장하도록 동작 가능하고, 인터넷으로 알려진 글로벌 통신 네트워크의 전부 또는 일부를 포함하는 임의의 공용 및/또는 개인용, 실제 및/또는 가상, 유선 및/또는 무선 네트워크로 독립적이거나 또는 상호연결될 수 있는, 하나 이상의 엔터프라이즈(enterprise), 애플리케이션, 개인, 퍼베이시브(pervasive) 및/또는 임베디드(embedded) 컴퓨터 시스템 및/또는 장치(apparatus)로 구현될 수 있으며, 다양한 종류의 유형의(tangible) 비일시적 컴퓨터 판독 가능 매체(non-transitory computer readable media)를 포함할 수 있다. 특히, 프로세서에 연결될(coupled) 때, 메모리(1205)는, 프로세서에 의해 실행될 때, 프로세서가 도 1 내지 도 10, 도 13 및 도 14와 관련하여 본 명세서에 기술된 동작들 중 하나 이상을 포함하는 동작들을 수행하게 하는 컴퓨터 판독 가능 프로그램 코드를 포함한다.
상술한 바와 같이, 본 발명의 실시예는, 의약품 패키지에 포함된 의약품을 검출하고 식별하기 위한 하나 이상의 기계 학습 엔진 및 라벨링 콘텐츠가 제거된 수정 이미지를 생성하도록 의약품 패키지의 면 상에서 라벨링 콘텐츠를 검출하기 위한 컨볼루션 신경망(Convolutional Neural Network)과 같은 AI 기술을 사용할 수 있는 AI 지원 의약품 패키지 분석 시스템을 제공할 수 있다. 이는 예를 들어 약국 또는 의료 센터가 포장된 의약품을 고객 또는 환자에게 출시하기 전에 패키지 검증 프로세스의 정확성을 향상시킬 수 있다.
추가 정의 및 실시예:
본 개시내용의 다양한 실시예들의 상술에서, 본 개시내용의 측면들은 임의의 새롭고 유용한 프로세스, 기계, 제조 또는 물질의 구성, 또는 이들의 임의의 새롭고 유용한 개선을 포함하는 다수의 특허 가능한 클래스 또는 컨텍스트 중 어떤 것으로 본원에 예시되고 기술될 수 있다. 따라서, 본 개시내용의 측면들은, 전체 하드웨어, 전체 소프트웨어(펌웨어, 상주 소프트웨어(resident software), 마이크로코드(micro-code) 등 포함)로 구현될 수 있거나 또는 모두 일반적으로 “회로”, “모듈”, “컴포넌트(component)” 또는 “시스템”이라고 본원에서 지칭될 수 있는 소프트웨어 및 하드웨어 구현을 결합한 것일 수 있다. 또한, 본 개시내용의 측면들은 구현된 컴퓨터 판독 가능한 프로그램 코드를 가지는 하나 이상의 컴퓨터 판독 가능 매체를 포함하는 컴퓨터 프로그램 제품(computer program product)의 형태를 취할 수 있다.
하나 이상의 컴퓨터 판독 가능 매체의 임의의 조합이 사용될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터 판독 가능 신호 매체(computer readable signal medium) 또는 컴퓨터 판독 가능 저장 매체(computer readable storage medium)일 수 있다. 컴퓨터 판독 가능 저장 매체는, 예를 들어, 전자, 자기, 광학, 전자기 또는 반도체 시스템, 장치, 또는 디바이스, 또는 전술한 것 중 임의의 적절한 조합일 수 있지만 이에 제한되지 않는다. 컴퓨터 판독 가능 저장 매체의 보다 구체적인 예(비포괄적 목록)(non-exhaustive list)는 다음을 포함할 수 있다: 휴대용 컴퓨터 디스켓, 하드 디스크, 랜덤 액세스 메모리(RAM: random access memory), 읽기 전용 메모리(ROM: read-only memory), 재사용 가능 읽기 전용 메모리(EPROM: erasable programmable read-only memory 또는 플래시 메모리), 리피터(repeater)를 갖는 적절한 광섬유, 휴대용 콤팩트 디스크 읽기 전용 메모리(CD-ROM: compact disc read-only memory), 광학 저장 디바이스(optical storage device), 자기 저장 디바이스(magnetic storage device), 또는 전술한 것 중 임의의 적절한 조합. 본 명세서의 맥락에서, 컴퓨터 판독 가능 저장 매체는 명령어 실행 시스템(instruction execution system), 장치 또는 디바이스와 관련하여 또는 이에 의해 사용하기 위한 프로그램을 포함하거나 또는 저장할 수 있는 어떤 유형의(tangible) 매체일 수 있다.
컴퓨터 판독 가능 신호 매체는 구현된 컴퓨터 판독 가능 프로그램 코드를 가지는 전파 데이터 신호(propagated data signal)를 예를 들어 기저대역(baseband) 또는 반송파(carrier wave)의 일부로 포함할 수 있다. 이러한 전파 신호(propagated signal)는 전자기(electro-magnetic), 광학 또는 이들의 임의의 적절한 조합을 포함하지만 이에 제한되지 않는 다양한 형태 중 어떤 것을 취할 수 있다. 컴퓨터 판독 가능 신호 매체는, 컴퓨터 판독 가능 저장 매체가 아니며 명령어 실행 시스템, 장치 또는 디바이스와 관련하여 또는 이에 의해 사용하기 위한 프로그램을 통신, 전파 또는 전송할 수 있는 임의의 컴퓨터 판독 가능 매체일 수 있다. 컴퓨터 판독 가능 신호 매체 상에 구현된 프로그램 코드는 무선, 유선, 광섬유 케이블, RF 등, 또는 이들의 임의의 적절한 조합을 포함하지만 이에 제한되지 않는 임의의 적합한 매체를 사용하여 전송될 수 있다.
본 개시내용의 측면들에 대한 동작들을 수행하기 위한 컴퓨터 프로그램 코드는 자바, 스칼라(Scala), 스몰토크(Smalltalk), 에펠(Eiffel), 제이드(JADE), 에메랄드(Emerald), C++, C#, VB.NET, 파이썬(Python) 등과 같은 객체 지향 프로그래밍 언어, “C” 프로그래밍 언어, 비주얼 베이직, 포트란(Fortran) 2003, 펄(Perl), 코볼(COBOL) 2002, PHP, ABAP와 같은 기존의 절차적 프로그래밍 언어, 파이썬, 루비(Ruby) 및 그루비(Groovy)와 같은 동적 프로그래밍 언어, 또는 기타 프로그래밍 언어를 포함하는 하나 이상의 프로그래밍 언어의 임의의 조합으로 작성될 수 있다. 프로그램 코드는, 독립형 소프트웨어 패키지로서, 부분적으로 사용자의 컴퓨터 상에서, 전체적으로 사용자의 컴퓨터 상에서, 부분적으로 사용자의 컴퓨터 상에서 그리고 부분적으로 원격 컴퓨터 상에서 또는 전체적으로 원격 컴퓨터 또는 서버 상에서 실행될 수 있다. 후자의 시나리오에서, 원격 컴퓨터는 근거리 네트워크(LAN: local area network) 또는 광역 네트워크(WAN: wide area network)를 포함하는 임의의 유형의 네트워크를 통해 사용자의 컴퓨터에 연결될 수 있거나, 또는 연결은 외부 컴퓨터로(예를 들어, 인터넷 서비스 제공자(Internet Service Provider)를 사용하는 인터넷을 통해) 또는 클라우드 컴퓨팅 환경(cloud computing environment)으로 이루어질 수 있으며, 또는 SaaS(Software as a Service)와 같은 서비스로 제공될 수 있다.
본 개시의 측면들은 본 개시내용의 실시예에 따른 방법들, 장치(시스템들), 및 컴퓨터 프로그램 제품들에 대한 흐름도 및/또는 블록도를 참조하여 본 명세서에서 설명된다. 흐름도 및/또는 블록도의 각각의 블록, 및 흐름도 및/또는 블록도에서의 블록들의 조합들은 컴퓨터 프로그램 명령어에 의해 구현될 수 있다는 것을 이해할 것이다. 이러한 컴퓨터 프로그램 명령어는 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 처리 장치의 프로세서에 제공되어 머신(machine)을 생성할 수 있으므로, 컴퓨터 또는 기타 프로그래밍 가능한 명령어 실행 장치의 프로세서를 통해 실행되는 명령어는 흐름도 및/또는 블록도의 블록 또는 블록들에 구체화된 기능/동작을 구현하기 위한 메커니즘(mechanism)을 생성한다.
이러한 컴퓨터 프로그램 명령어는 또한 실행될 때 컴퓨터, 기타 프로그래밍 가능한 데이터 처리 장치 또는 기타 디바이스가 특정 방식으로 기능하도록 지시할 수 있는 컴퓨터 판독 가능 매체에 저장될 수 있으므로, 컴퓨터 판독 가능 매체에 저장되는 경우 명령어는, 실행될 때 컴퓨터가 흐름도 및/또는 블록도의 블록 또는 블록들에 구체화된 기능/동작을 구현하게 하는 명령어를 포함하는 제품(article of manufacture)을 생성한다. 또한, 컴퓨터 프로그램 명령어는, 컴퓨터, 기타 프로그래밍 가능한 명령어 실행 장치 또는 기타 디바이스에 로드되어(loaded) 컴퓨터, 기타 프로그래밍 가능한 장치 또는 기타 디바이스 상에서 일련의 동작 단계가 수행되게 하여 컴퓨터 구현 프로세스(computer implemented process)를 생성할 수 있으므로, 컴퓨터 또는 기타 프로그래밍 가능한 장치 상에서 실행되는 명령어는 흐름도 및/또는 블록도의 블록 또는 블록들에 구체화된 기능/동작을 구현하기 위한 프로세스를 제공한다.
도면에서의 흐름도 및 블록도는 본 개시내용의 다양한 측면들에 따른 시스템들, 방법들, 및 컴퓨터 프로그램 제품들의 가능한 구현들의 아키텍처, 기능, 및 동작을 예시한다. 이와 관련하여, 흐름도 또는 블록도의 각 블록은 특정된 논리적 기능(들)을 구현하기 위한 하나 이상의 실행가능한 명령어를 포함하는 모듈(module), 세그먼트(segment) 또는 코드(code)의 일부를 나타낼 수 있다. 일부 대안적인 구현들에서, 블록에서 언급된 기능들은 도면들에서 언급된 순서와 다르게 발생할 수도 있다는 것을 또한 주의해야 한다. 예를 들어, 연속으로 도시된 두 개의 블록들은 사실 실질적으로 동시에 수행될 수 있고, 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행될 수 있다. 블록도 및/또는 흐름도의 각각의 블록, 및 블록도 및/또는 흐름도의 블록들의 조합은, 특수 목적 하드웨어 및 컴퓨터 명령어들의 조합들 또는 특정된 기능들 또는 동작들을 수행하는 특수 목적 하드웨어 기반 시스템들(special purpose hardware-based systems)로 구현될 수 있다는 것을 또한 주의해야 할 것이다.
본 명세서에 사용되는 용어는 단지 특정 측면들을 설명하기 위한 것이며 본 개시 내용을 제한하는 것으로 의도되지 않는다. 본 명세서에서 사용되는 “그”("the") 및 “하나”("a", "an")와 같은 단수형은 문맥상 명백하게 다르게 표시하지 않는 한 복수형도 포함하도록 의도된다. 본 명세서에서 사용되는 용어 “포함하다”("comprises," "comprising," "include", "including", "includes"), “가지다”("have", "has", "having") 또는 이들의 변형은, 명시된 특징, 수, 단계, 동작, 요소 및/또는 구성요소의 존재를 명시하지만, 하나 이상의 다른 특징, 수, 단계, 동작, 요소, 구성요소 및/또는 이들의 그룹의 존재 또는 추가를 배제하지는 않는다는 것을 또한 이해할 것이다. 본 명세서에서 사용되는 바와 같이, 용어 "및/또는" 은 하나 이상의 연관된 목록 항목의 임의 및 모든 조합을 포함한다. 도면에 대한 설명 전체에 걸쳐서 같은 참조번호들은 같은 구성요소들을 나타낸다.
제1, 제2 등이 다양한 구성요소들을 설명하기 위해서 사용되나, 이들 구성요소들은 이들 용어로 제한되지 않는 것을 또한 이해할 것이다. 이러한 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용된다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학 용어를 포함)는 본 발명이 속하는 기술분야에서 당업자에게 공통적으로 이해되는 것과 같은 의미를 가진다. 일반적으로 사용되는 사전에 정의된 것과 같은 용어는 명세서 및 관련 기술의 맥락에서 그 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의되지 않는 한 이상적이거나 또는 지나치게 형식적인 의미로 해석되어서는 안 된다는 것을 또한 이해할 것이다. 잘 알려진 기능들 또는 구성들은 간결성 및/또는 명확성을 위해 상세하게 설명되지 않을 수 있다.
본 개시내용의 설명은 예시 및 설명의 목적을 위해 제시되었지만, 개시된 형태로 본 개시내용으로 철저하거나 제한되도록 의도되지 않는다.  본 기술분야의 당업자는 본 개시내용의 범위 및 사상을 벗어나지 않고 많은 변형 및 변경들을 알 수 있을 것이다. 본 명세서의 개시내용의 측면들은 본 개시내용의 원리들 및 실제 적용을 가장 잘 설명하기 위해, 그리고 기술분야의 당업자들이 고려되는 특정 용도에 적합한 다양한 변형들로 본 개시 내용을 이해하게 하도록 선택되고 설명되었다.

Claims (20)

  1. 하나 이상의 의약품을 내부에 포함하는 의약품 패키지(drug product package)의 이미지를 수신하는 단계 - 상기 이미지는 면(surface) 상에 표시되는 라벨링 콘텐츠(labeling content)를 포함함 -;
    인공지능 엔진(artificial intelligence engine)을 이용하여, 상기 의약품 패키지의 면 상의 라벨링 콘텐츠를 검출하는 단계; 및
    상기 의약품 패키지의 면에서 상기 라벨링 콘텐츠가 제거된 상기 의약품 패키지의 수정 이미지(modified image)를 생성하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 라벨링 콘텐츠는 상업 마케팅 정보(commercial marketing information), 환자 식별 정보(patient identification information) 또는 개인 건강 관리 정보(personal healthcare information)를 포함하는
    방법.
  3. 제2항에 있어서,
    상기 상업 마케팅 정보는 로고(logo) 또는 상호(business name)을 포함하고,
    상기 환자 식별 정보는 환자 이름, 환자 전화 번호, 환자 주소, 또는 환자 식별 번호를 포함하고,
    상기 개인 건강 관리 정보는 상기 하나 이상의 의약품에 대한 이름, 상기 하나 이상의 의약품 각각의 수, 상기 하나 이상의 의약품 각각에 대한 처방된 투여 시간(time of administration), 상기 하나 이상의 의약품과 연관된 하나 이상의 바코드, 처방(prescription order), 환자 계정, 또는 식별 번호를 포함하는
    방법.
  4. 제1항에 있어서,
    상기 의약품 패키지의 감마 보정된 이미지(gamma corrected image)를 생성하기 위해, 상기 의약품 패키지의 이미지를 수신하는 것에 응답하여 상기 의약품 패키지의 이미지에 대하여 감마 보정(gamma correction)을 수행하는 단계;
    상기 의약품 패키지의 노이즈 감소된 이미지(reduced noise image)를 생성하기 위해, 상기 의약품 패키지의 감마 보정된 이미지에 대하여 가우시안 블러 노이즈 제거(gaussian blur denoising)를 수행하는 단계; 및
    상기 의약품 패키지의 전경-배경 분리 이미지(foreground-background separated image)를 생성하기 위해, 상기 의약품 패키지의 노이즈 감소된 이미지에 대하여 자동 이미지 임계 처리(automatic image thresholding)를 수행하는 단계
    를 더 포함하고,
    상기 인공지능 엔진을 이용하여, 상기 라벨링 콘텐츠를 검출하는 단계는,
    상기 인공 지능 엔진을 이용하여, 상기 의약품 패키지의 전경-배경 분리 이미지의 면 상의 라벨링 콘텐츠를 검출하는 단계
    를 포함하는 방법.
  5. 제4항에 있어서,
    상기 인공지능 엔진은 컨볼루션 신경망(convolutional neural network)인
    방법.
  6. 제5항에 있어서,
    상기 컨볼루션 신경망은 복수의 컨볼루션 계층들(convolutional layers)을 포함하고, 상기 복수의 컨볼루션 계층들 중 적어도 일부는 스킵 연결(skip connection)을 통해 서로 연결되는
    방법.
  7. 제1항에 있어서,
    상기 인공지능 엔진은 제1 인공지능 엔진이고, 상기 수정 이미지는 제1 수정 이미지이고,
    상기 방법은:
    상기 하나 이상의 의약품에 대한 주문 정보(order information) 및 상기 의약품 패키지에 대한 식별자를 수신하는 단계;
    제2 인공 지능 엔진을 이용하여, 상기 제1 수정 이미지에서 상기 하나 이상의 의약품 중 개별 의약품을 검출하는 단계; 및
    상기 하나 이상의 의약품을 상기 주문 정보 및 상기 의약품 패키지에 대한 식별자와 연관시키고, 상기 하나 이상의 의약품 중 개별 의약품을 구별하는 표시(indicia)를 포함하는 상기 의약품 패키지의 제2 수정 이미지를 생성하는 단계
    를 더 포함하는 방법.
  8. 제7항에 있어서,
    상기 하나 이상의 의약품 중 개별 의약품을 구별하는 표시는, 하나 이상의 바운딩 박스(bounding boxes)를 포함하는
    방법.
  9. 제7항에 있어서,
    상기 주문 정보는 상기 의약품 패키지 내의 상기 하나 이상의 의약품에 대한 이름을 포함하고,
    상기 방법은:
    제3 인공 지능 엔진을 사용하여, 상기 하나 이상의 의약품에 대한 이름에 기초하여 상기 제2 수정 이미지에서 상기 하나 이상의 의약품 중 적어도 일부를 식별하는 단계
    를 더 포함하고,
    상기 이름은 참조 데이터베이스(reference database)에서 의약품 속성과 연관되는
    방법.
  10. 제9항에 있어서,
    상기 하나 이상의 의약품 중 적어도 일부는 상기 하나 이상의 의약품 중 부서진(fragmented) 의약품을 포함하는
    방법.
  11. 제9항에 있어서,
    상기 제3 인공 지능 엔진을 이용하여, 상기 하나 이상의 의약품의 일부를 상기 하나 이상의 의약품에 대한 손상으로 인한 파편(debris)으로 식별하는 단계
    를 더 포함하는 방법.
  12. 제9항에 있어서,
    상기 하나 이상의 의약품에 대한 이름으로 상기 제2 수정 이미지에서 상기 하나 이상의 의약품 중 적어도 일부에 주석을 다는(annotating) 단계
    를 더 포함하는 방법.
  13. 제12항에 있어서,
    상기 이름으로 주석이 달리지 않은 상기 하나 이상의 의약품 중 어느 하나에 임시 이름(temporary name)으로 주석을 다는 단계
    를 더 포함하는 방법.
  14. 제12항에 있어서,
    상기 이름은 제1 이름이고, 상기 주문 정보는 상기 의약품 패키지 내의 상기 하나 이상의 의약품에 대한 의약품 코드(NDC: National Drug Codes)를 포함하고,
    상기 방법은:
    상기 제1 이름으로 주석이 달린 상기 하나 이상의 의약품 중 적어도 일부와 연관되지 않은 의약품 코드(NDC)를 의약품 참조 데이터(drug product reference data)와 매칭시키는(matching) 단계; 및
    상기 의약품 참조 데이터와 매칭시키는 의약품 코드(NDC)를 연관시킨 이름으로 주석이 달리지 않은 상기 하나 이상의 의약품 중 어느 하나에, 의약품 참조 데이터를 기초로 제2 이름으로 주석을 다는 단계
    를 더 포함하는 방법.
  15. 제14항에 있어서,
    상기 의약품 참조 데이터는 의약품 형상, 의약품 색상, 의약품 에칭(etching), 의약품 임프린트(imprint), 의약품 중량, 및/또는 의약품 라벨(label)을 포함하는
    방법.
  16. 프로세서; 및
    상기 프로세서에 연결되고, 동작을 수행하도록 상기 프로세서에 의해 실행 가능한 메모리에 구현된 컴퓨터 판독가능 프로그램 코드를 포함하는 메모리
    를 포함하고,
    상기 동작은:
    하나 이상의 의약품을 내부에 포함하는 의약품 패키지(drug product package)의 이미지를 수신하는 단계 - 상기 이미지는 면(surface) 상에 표시되는 라벨링 콘텐츠(labeling content)를 포함함 -;
    인공지능 엔진(artificial intelligence engine)을 이용하여, 상기 의약품 패키지의 면 상의 라벨링 콘텐츠를 검출하는 단계; 및
    상기 의약품 패키지의 면에서 상기 라벨링 콘텐츠가 제거된 상기 의약품 패키지의 수정 이미지(modified image)를 생성하는 단계
    를 포함하는 시스템.
  17. 제16항에 있어서,
    상기 동작은:
    상기 의약품 패키지의 감마 보정된 이미지(gamma corrected image)를 생성하기 위해, 상기 의약품 패키지의 이미지를 수신하는 것에 응답하여 상기 의약품 패키지의 이미지에 대하여 감마 보정(gamma correction)을 수행하는 단계;
    상기 의약품 패키지의 노이즈 감소된 이미지(reduced noise image)를 생성하기 위해, 상기 의약품 패키지의 감마 보정된 이미지에 대하여 가우시안 블러 노이즈 제거(gaussian blur denoising)를 수행하는 단계; 및
    상기 의약품 패키지의 전경-배경 분리 이미지(foreground-background separated image)를 생성하기 위해, 상기 의약품 패키지의 노이즈 감소된 이미지에 대하여 자동 이미지 임계 처리(automatic image thresholding)를 수행하는 단계
    를 더 포함하고,
    상기 인공지능 엔진을 이용하여, 상기 라벨링 콘텐츠를 검출하는 단계는,
    상기 인공 지능 엔진을 이용하여, 상기 의약품 패키지의 전경-배경 분리 이미지의 면 상의 라벨링 콘텐츠를 검출하는 단계
    를 포함하는
    시스템.
  18. 제17항에 있어서,
    상기 인공지능 엔진은 컨볼루션 신경망(convolutional neural network)인
    시스템.
  19. 동작을 수행하도록 프로세서에 의해 실행 가능한 매체에 구현된 컴퓨터 판독가능 프로그램 코드를 포함하는 비일시적 컴퓨터 판독가능 저장 매체(non-transitory computer readable storage medium)
    를 포함하고,
    상기 동작은:
    하나 이상의 의약품을 내부에 포함하는 의약품 패키지(drug product package)의 이미지를 수신하는 단계 - 상기 이미지는 면(surface) 상에 표시되는 라벨링 콘텐츠(labeling content)를 포함함 -;
    인공지능 엔진(artificial intelligence engine)을 이용하여, 상기 의약품 패키지의 면 상의 라벨링 콘텐츠를 검출하는 단계; 및
    상기 의약품 패키지의 면에서 상기 라벨링 콘텐츠가 제거된 상기 의약품 패키지의 수정 이미지(modified image)를 생성하는 단계
    를 포함하는 컴퓨터 프로그램 제품(computer program product).
  20. 제19항에 있어서,
    상기 동작은:
    상기 의약품 패키지의 감마 보정된 이미지(gamma corrected image)를 생성하기 위해, 상기 의약품 패키지의 이미지를 수신하는 것에 응답하여 상기 의약품 패키지의 이미지에 대하여 감마 보정(gamma correction)을 수행하는 단계;
    상기 의약품 패키지의 노이즈 감소된 이미지(reduced noise image)를 생성하기 위해, 상기 의약품 패키지의 감마 보정된 이미지에 대하여 가우시안 블러 노이즈 제거(gaussian blur denoising)를 수행하는 단계; 및
    상기 의약품 패키지의 전경-배경 분리 이미지(foreground-background separated image)를 생성하기 위해, 상기 의약품 패키지의 노이즈 감소된 이미지에 대하여 자동 이미지 임계 처리(automatic image thresholding)를 수행하는 단계
    를 더 포함하고,
    상기 인공지능 엔진을 이용하여, 상기 라벨링 콘텐츠를 검출하는 단계는,
    상기 인공 지능 엔진을 이용하여, 상기 의약품 패키지의 전경-배경 분리 이미지의 면 상의 라벨링 콘텐츠를 검출하는 단계
    를 포함하는 컴퓨터 프로그램 제품.
KR1020237027805A 2021-01-29 2022-01-28 의약품 패키징에서 이질적인 콘텐츠를 제거하여 내부의콘텐츠의 검증을 용이하게 하기 위한 방법, 시스템 및 컴퓨터 프로그램 제품 KR20230135101A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202163143400P 2021-01-29 2021-01-29
US63/143,400 2021-01-29
PCT/US2022/014251 WO2022165135A1 (en) 2021-01-29 2022-01-28 Methods, systems, and computer program product for removing extraneous content from drug product packaging to facilitate validation of the contents therein

Publications (1)

Publication Number Publication Date
KR20230135101A true KR20230135101A (ko) 2023-09-22

Family

ID=82593869

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237027805A KR20230135101A (ko) 2021-01-29 2022-01-28 의약품 패키징에서 이질적인 콘텐츠를 제거하여 내부의콘텐츠의 검증을 용이하게 하기 위한 방법, 시스템 및 컴퓨터 프로그램 제품

Country Status (8)

Country Link
US (1) US20220254172A1 (ko)
EP (1) EP4285323A1 (ko)
JP (1) JP2024506531A (ko)
KR (1) KR20230135101A (ko)
CN (1) CN116830150A (ko)
AU (1) AU2022214915A1 (ko)
CA (1) CA3146117A1 (ko)
WO (1) WO2022165135A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050027664A1 (en) * 2003-07-31 2005-02-03 Johnson David E. Interactive machine learning system for automated annotation of information in text
US8639525B2 (en) * 2009-10-16 2014-01-28 Codonics, Inc. Drug labeling
KR200464617Y1 (ko) * 2011-03-03 2013-01-11 한미약품 주식회사 정제 식별용 라벨.
KR101744123B1 (ko) * 2015-12-29 2017-06-08 주식회사 퍼스트디스 의약품 식별 장치 및 그 방법
US10492987B2 (en) * 2017-06-26 2019-12-03 Parata Systems, Llc Methods, systems, and computer program products for managing multiple drug product packaging systems using a common database management system

Also Published As

Publication number Publication date
EP4285323A1 (en) 2023-12-06
AU2022214915A1 (en) 2023-07-27
JP2024506531A (ja) 2024-02-14
CN116830150A (zh) 2023-09-29
CA3146117A1 (en) 2022-07-29
WO2022165135A1 (en) 2022-08-04
US20220254172A1 (en) 2022-08-11

Similar Documents

Publication Publication Date Title
US11379979B2 (en) Computer imaging pre-processing for automated medication dispensing analysis
CN113012783A (zh) 药品复核方法、装置、计算机设备及存储介质
US9824297B1 (en) Method and apparatus for medication identification
CN114388094A (zh) 药物的标识和验证
US20230098966A1 (en) Methods, systems, and computer program product for validating drug product package content using tiered evaluation factors
US20230334854A1 (en) Methods and systems for image processing to present data in augmented reality
US20220254172A1 (en) Methods, systems, and computer program product for removing extraneous content from drug product packaging to facilitate validation of the contents therein
US20220261982A1 (en) Methods, systems, and computer program product for validating drug product package contents based on characteristics of the drug product packaging system
US20230410970A1 (en) Methods, systems, and computer program product for pre-categorizing drug products based on characteristics thereof to reduce artificial intelligence model size used in validating the drug products
US11593393B1 (en) Systems and methods for providing automated integration and error resolution of records in complex data systems
US11301630B1 (en) Computer-implemented automated authorization system using natural language processing
CN113936781A (zh) 一种高效的药品自动化核对方法
KR20240088906A (ko) 계층화된 평가 인자를 사용하여 의약품 패키지 내용물을 검증하는 방법, 시스템 및 컴퓨터 프로그램 제품
US20210158907A1 (en) Systems and methods for patient record matching
US20220129819A1 (en) Organization of script packaging sequence and packaging system selection for drug products using an artificial intelligence engine
US20230260040A1 (en) Probability based health claims processing
US20230215549A1 (en) Systems and methods to process a healthcare transaction in a heterogeneous environment comprised of mainframe and cloud based systems in real-time
US11783186B2 (en) Methods and systems for predicting prescription directions using machine learning algorithm
US11848086B2 (en) Methods and systems for automatic prescription processing using machine learning algorithm
Hsu et al. Real-Time Pill Identification with Prescription Confirmation Using Deep Learning on Embedded System
JP2024515745A (ja) 保持キャニスタからのラウンドロビン取り出しを使用して医薬品パッケージングシステム内で医薬品を分配する為の方法、システム、及びコンピュータプログラム製品