This page was machine-translated. Spotted a mistake?Help improve it.
Skip to content

Find Duplicates

perceptual hashing (dHash) का उपयोग करके डुप्लिकेट और लगभग-डुप्लिकेट का पता लगाने के लिए कई छवियाँ अपलोड करें। समान छवियों को एक साथ समूहित करता है, प्रत्येक समूह में सर्वोत्तम गुणवत्ता वाले संस्करण की पहचान करता है, और संभावित स्थान बचत की गणना करता है।

API Endpoint

POST /api/v1/tools/image/find-duplicates

एकाधिक image फ़ाइलों और एक वैकल्पिक JSON settings फ़ील्ड के साथ multipart form data स्वीकार करता है।

Parameters

ParameterTypeRequiredDefaultDescription
thresholdnumberनहीं8छवियों को डुप्लिकेट मानने के लिए अधिकतम Hamming दूरी (0 से 20)। कम = सख़्त मिलान

File Fields

multipart अनुरोध में कम से कम 2 image फ़ाइलें अपलोड करें (सभी file फ़ील्ड नाम का उपयोग करते हुए या फ़ाइल भागों के लिए कोई भी फ़ील्ड नाम)।

Example Request

bash
curl -X POST http://localhost:1349/api/v1/tools/image/find-duplicates \
  -H "Authorization: Bearer si_your-api-key" \
  -F "[email protected]" \
  -F "[email protected]" \
  -F "[email protected]" \
  -F "[email protected]" \
  -F 'settings={"threshold": 8}'

Example Response

json
{
  "totalImages": 4,
  "duplicateGroups": [
    {
      "groupId": 1,
      "files": [
        {
          "filename": "photo1.jpg",
          "similarity": 100,
          "width": 4032,
          "height": 3024,
          "fileSize": 2450000,
          "format": "jpeg",
          "isBest": true,
          "thumbnail": "data:image/jpeg;base64,/9j/..."
        },
        {
          "filename": "photo2.jpg",
          "similarity": 96.88,
          "width": 1920,
          "height": 1440,
          "fileSize": 850000,
          "format": "jpeg",
          "isBest": false,
          "thumbnail": "data:image/jpeg;base64,/9j/..."
        }
      ]
    }
  ],
  "uniqueImages": 2,
  "spaceSaveable": 850000,
  "skippedFiles": []
}

Response Fields

FieldTypeDescription
totalImagesnumberसफलतापूर्वक विश्लेषित छवियों की संख्या
duplicateGroupsarrayडुप्लिकेट छवियों के समूह
uniqueImagesnumberकिसी भी डुप्लिकेट समूह का हिस्सा न होने वाली छवियों की संख्या
spaceSaveablenumberगैर-सर्वोत्तम डुप्लिकेट हटाकर बचाए जा सकने वाले कुल बाइट
skippedFilesarrayऐसी फ़ाइलें जिन्हें संसाधित नहीं किया जा सका (फ़ाइलनाम और कारण के साथ)

Duplicate Group Object

FieldTypeDescription
groupIdnumberसमूह पहचानकर्ता
filesarrayइस डुप्लिकेट समूह की छवियाँ

File Object (within a group)

FieldTypeDescription
filenamestringमूल फ़ाइलनाम
similaritynumberसंदर्भ छवि (समूह में पहली) के साथ समानता प्रतिशत
widthnumberछवि चौड़ाई पिक्सेल में
heightnumberछवि ऊँचाई पिक्सेल में
fileSizenumberफ़ाइल आकार बाइट में
formatstringछवि प्रारूप
isBestbooleanक्या यह उच्चतम गुणवत्ता वाला संस्करण है (सबसे अधिक पिक्सेल, सबसे बड़ी फ़ाइल)
thumbnailstring या nullपूर्वावलोकन के लिए Base64 JPEG थंबनेल (200px चौड़ा)

Notes

  • perceptual समानता का पता लगाने के लिए 128-bit dHash (64-bit पंक्ति + 64-bit स्तंभ) का उपयोग करता है। यह आकार बदलने, पुनः-संपीड़न और छोटे संपादनों के बावजूद भी डुप्लिकेट पकड़ता है।
  • threshold, hashes के बीच अधिकतम Hamming दूरी को दर्शाता है। 8 का डिफ़ॉल्ट झूठी सकारात्मकता से बचते हुए लगभग-डुप्लिकेट पकड़ता है। केवल पिक्सेल-समरूप के लिए 0 का उपयोग करें, या बहुत ढीले मिलान के लिए 15-20 का।
  • प्रत्येक समूह में "सर्वोत्तम" छवि वह होती है जिसमें सबसे अधिक पिक्सेल (चौड़ाई x ऊँचाई) होते हैं, और फ़ाइल आकार टाईब्रेकर के रूप में होता है।
  • कम से कम 2 छवियाँ आवश्यक हैं। जो फ़ाइलें सत्यापन या डिकोडिंग में विफल होती हैं उन्हें पूरे अनुरोध को विफल करने के बजाय skippedFiles में रिपोर्ट किया जाता है।
  • थंबनेल 200px-चौड़े JPEG पूर्वावलोकन हैं जो data URIs के रूप में एन्कोड किए जाते हैं।
  • सभी सामान्य प्रारूप समर्थित हैं (HEIC, RAW, PSD, SVG स्वचालित रूप से डिकोड किए जाते हैं)।