
@startuml

set namespaceSeparator ::

namespace object_detector {
    namespace segmentator {
        class SegmentatorLink<<Link, Notifier>>
        interface Publisher<<Observer>>
        interface Segmentator<<Strategy>>

        SegmentatorLink -> "*" Publisher
        Segmentator "1" <- SegmentatorLink
        SegmentatedImage "1" <- Segmentator
        Segmentator <|-- CannySegmentator
        Publisher <|-- WindowPublisher
    }
}

@enduml
