#ifndef __I_INKDOTDETECT_H__ #define __I_INKDOTDETECT_H__ // ***************************************************************************** // ��Ȩ���У�C��2023~2099 �Ϻ����ɳ�������������˾ // ��������Ȩ�� // ***************************************************************************** // ���� : ½�̷� // �汾 : 1.0 // ���봴�����ڣ�2025/02/18 // �汾�������ڣ�2025/02/18 // ����˵��:ī����ӿ� // ***************************************************************************** #include <vector> #include <string> #include "TypeDef.h" namespace HalconCpp { class HTuple; } namespace JVision { /** * @brief ī����ӿڻ��� * */ class JVision_API IInkDotDetect { public: virtual ~IInkDotDetect() = 0 {} /** * @brief ī���� * @param[in] Image ��Ҫ����ͼƬ * @param[in] markImage ģ��ͼƬ * @param[in&out] result ��λ�ļ��ϣ��Դ���ļ��Ͻ��в��� * * @return bool �Ƿ�ִ�гɹ� */ virtual bool FindInkDot(const JVision::ImageInfo& Image, const JVision::ImageInfo& markImage, std::vector<JVision::Point>& result) = 0; /** * @brief ī���� * @param[in] Image ��Ҫ����ͼƬ * @param[in] markImage ģ��ͼƬ * @param[in&out] row ��λ�������꼯�ϣ��Դ���ļ��Ͻ��в��� * @param[in&out] col ��λ�������꼯�ϣ��Դ���ļ��Ͻ��в��� * * @return bool �Ƿ�ִ�гɹ� */ virtual bool FindInkDot(const JVision::ImageInfo& Image, const JVision::ImageInfo& markImage, HalconCpp::HTuple& row, HalconCpp::HTuple& col) = 0; /** * @brief ī���� * @param[in] Image ��Ҫ����ͼƬ * @param[in] markImage ģ��ͼƬ * @param[in&out] row ��λ�������꼯�ϣ��Դ���ļ��Ͻ��в��� * @param[in&out] row ��λ�������꼯�ϣ��Դ���ļ��Ͻ��в��� * @param[in] index ����ī����Ľӿ� * * @return bool �Ƿ�ִ�гɹ� */ virtual bool FindInkDot(const JVision::ImageInfo& Image, const JVision::ImageInfo& markImage, HalconCpp::HTuple& row, HalconCpp::HTuple& col, int index) = 0; /** * @brief ��ȡī���⺯����ʵ����ָ�� */ static IInkDotDetect* GetDotDetect(); }; } #endif