চিত্র অনুসন্ধানকারীদের সংহত করুন

ইমেজ সার্চ ইমেজের ডাটাবেসে অনুরূপ ইমেজ খোঁজার অনুমতি দেয়। এটি অনুসন্ধান ক্যোয়ারীকে একটি উচ্চ-মাত্রিক ভেক্টরে এমবেড করে কাজ করে যা কোয়েরির শব্দার্থিক অর্থ উপস্থাপন করে, তারপরে ScaNN (স্কেলযোগ্য নিকটতম প্রতিবেশী) ব্যবহার করে পূর্বনির্ধারিত, কাস্টম সূচকে মিল অনুসন্ধান করে।

চিত্র শ্রেণীবিভাগের বিপরীতে, স্বীকৃত আইটেমগুলির সংখ্যা বাড়ানোর জন্য সম্পূর্ণ মডেলটিকে পুনরায় প্রশিক্ষণের প্রয়োজন হয় না। নতুন আইটেম যোগ করা যেতে পারে সহজভাবে সূচক পুনর্নির্মাণ. এটি ইমেজের বড় (100k+ আইটেম) ডাটাবেসের সাথে কাজ করতে সক্ষম করে।

আপনার মোবাইল অ্যাপ্লিকেশনগুলিতে আপনার কাস্টম চিত্র অনুসন্ধানকারী স্থাপন করতে টাস্ক লাইব্রেরি ImageSearcher API ব্যবহার করুন৷

ImageSearcher API-এর মূল বৈশিষ্ট্য

  • ইনপুট হিসাবে একটি একক চিত্র নেয়, এম্বেডিং নিষ্কাশন এবং সূচীতে নিকটতম-প্রতিবেশী অনুসন্ধান সম্পাদন করে।

  • ইনপুট ইমেজ প্রক্রিয়াকরণ, ঘূর্ণন, আকার পরিবর্তন, এবং রঙ স্থান রূপান্তর সহ।

  • ইনপুট চিত্রের আগ্রহের অঞ্চল।

পূর্বশর্ত

ImageSearcher API ব্যবহার করার আগে, অনুসন্ধান করার জন্য চিত্রগুলির কাস্টম কর্পাসের উপর ভিত্তি করে একটি সূচক তৈরি করা দরকার। এটি মডেল মেকার অনুসন্ধানকারী API ব্যবহার করে টিউটোরিয়াল অনুসরণ এবং অভিযোজিত করে অর্জন করা যেতে পারে।

এই জন্য আপনার প্রয়োজন হবে:

এই ধাপের পরে, আপনার একটি স্বতন্ত্র TFLite অনুসন্ধানকারী মডেল থাকা উচিত (যেমন mobilenet_v3_searcher.tflite ), যা TFLite মডেল মেটাডেটার সাথে সংযুক্ত সূচক সহ আসল চিত্র এমবেডার মডেল।

জাভাতে অনুমান চালান

ধাপ 1: Gradle নির্ভরতা এবং অন্যান্য সেটিংস আমদানি করুন

.tflite অনুসন্ধানকারী মডেল ফাইলটি Android মডিউলের সম্পদ ডিরেক্টরিতে অনুলিপি করুন যেখানে মডেলটি চালানো হবে৷ নির্দিষ্ট করুন যে ফাইলটি সংকুচিত করা উচিত নয়, এবং মডিউলের build.gradle ফাইলে TensorFlow Lite লাইব্রেরি যোগ করুন:

android {
    // Other settings

    // Specify tflite index file should not be compressed for the app apk
    aaptOptions {
        noCompress "tflite"
    }

}

dependencies {
    // Other dependencies

    // Import the Task Vision Library dependency
    implementation 'org.tensorflow:tensorflow-lite-task-vision:0.4.4'
    // Import the GPU delegate plugin Library for GPU inference
    implementation 'org.tensorflow:tensorflow-lite-gpu-delegate-plugin:0.4.4'
}

ধাপ 2: মডেল ব্যবহার

// Initialization
ImageSearcherOptions options =
    ImageSearcherOptions.builder()
        .setBaseOptions(BaseOptions.builder().useGpu().build())
        .setSearcherOptions(
            SearcherOptions.builder().setL2Normalize(true).build())
        .build();
ImageSearcher imageSearcher =
    ImageSearcher.createFromFileAndOptions(context, modelFile, options);

// Run inference
List<NearestNeighbor> results = imageSearcher.search(image);

ImageSearcher কনফিগার করার জন্য আরও বিকল্পের জন্য সোর্স কোড এবং javadoc দেখুন।

C++ এ অনুমান চালান

// Initialization
ImageSearcherOptions options;
options.mutable_base_options()->mutable_model_file()->set_file_name(model_path);
options.mutable_embedding_options()->set_l2_normalize(true);
std::unique_ptr<ImageSearcher> image_searcher = ImageSearcher::CreateFromOptions(options).value();

// Create input frame_buffer from your inputs, `image_data` and `image_dimension`.
// See more information here: tensorflow_lite_support/cc/task/vision/utils/frame_buffer_common_utils.h
std::unique_ptr<FrameBuffer> frame_buffer = CreateFromRgbRawBuffer(
      image_data, image_dimension);

// Run inference
const SearchResult result = image_searcher->Search(*frame_buffer).value();

ImageSearcher কনফিগার করার জন্য আরও বিকল্পের জন্য সোর্স কোড দেখুন।

পাইথনে অনুমান চালান

ধাপ 1: TensorFlow Lite সাপোর্ট Pypi প্যাকেজ ইনস্টল করুন।

আপনি নিম্নলিখিত কমান্ড ব্যবহার করে TensorFlow Lite Support Pypi প্যাকেজ ইনস্টল করতে পারেন:

pip install tflite-support

ধাপ 2: মডেল ব্যবহার

from tflite_support.task import vision

# Initialization
image_searcher = vision.ImageSearcher.create_from_file(model_path)

# Run inference
image = vision.TensorImage.create_from_file(image_file)
result = image_searcher.search(image)

ImageSearcher কনফিগার করার জন্য আরও বিকল্পের জন্য সোর্স কোড দেখুন।

উদাহরণ ফলাফল

Results:
 Rank#0:
  metadata: burger
  distance: 0.13452
 Rank#1:
  metadata: car
  distance: 1.81935
 Rank#2:
  metadata: bird
  distance: 1.96617
 Rank#3:
  metadata: dog
  distance: 2.05610
 Rank#4:
  metadata: cat
  distance: 2.06347

আপনার নিজস্ব মডেল এবং পরীক্ষার ডেটা সহ ImageSearcher-এর জন্য সাধারণ CLI ডেমো টুল ব্যবহার করে দেখুন।