> ## Documentation Index
> Fetch the complete documentation index at: https://ailabtools.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Hairstyle Extraction

> Hairstyle Extraction API extracts hairstyle regions from portrait images and returns the extracted hairstyle result.

export const FileStoragePolicy = ({uploadedFiles, responseType}) => {
  const responseFileData = {
    URL: {
      stored: "Yes",
      retention: "24 Hours",
      deletion: "Automatic"
    },
    BASE64: {
      stored: "No",
      retention: "N/A",
      deletion: "Immediate"
    }
  };
  if (!uploadedFiles && !responseType) return null;
  return <div>
      <table>
        <thead>
          <tr>
            <th>Data Type</th>
            <th>Stored</th>
            <th>Retention</th>
            <th>Training</th>
            <th>Deletion</th>
          </tr>
        </thead>
        <tbody>
          {uploadedFiles && <tr>
              <td>Uploaded Files</td>
              <td>No</td>
              <td>N/A</td>
              <td>No</td>
              <td>Immediate</td>
            </tr>}
          {responseType && responseFileData?.[responseType] && <tr>
              <td>Response Files ({responseType})</td>
              <td>{responseFileData[responseType]['stored']}</td>
              <td>{responseFileData[responseType]['retention']}</td>
              <td>No</td>
              <td>{responseFileData[responseType]['deletion']}</td>
            </tr>}
        </tbody>
      </table>

      <Tip>
        For more information, see the{" "}<a href="/docs/file-storage-policy">File Storage Policy</a> and{" "}<a href="https://www.ailabtools.com/privacy-policy" target="_blank">Privacy Policy</a>.
      </Tip>
    </div>;
};

export const BillingInstructions = ({creditsPerRequest = 1}) => {
  const creditUnitPrice = 0.0027;
  const billingTiers = [{
    price: 6,
    credits: 2000,
    costPerCredit: 0.003
  }, {
    price: 30,
    credits: 10000,
    costPerCredit: 0.003
  }, {
    price: 300,
    credits: 110000,
    costPerCredit: 0.0027
  }, {
    price: 1500,
    credits: 550000,
    costPerCredit: 0.0027
  }, {
    price: 2500,
    credits: 1000000,
    costPerCredit: 0.0025
  }];
  const formatCurrency = (value, fractionDigits = 2) => value.toLocaleString("en-US", {
    style: "currency",
    currency: "USD",
    minimumFractionDigits: fractionDigits,
    maximumFractionDigits: fractionDigits
  });
  const formatNumber = (value, fractionDigits = 0) => value.toLocaleString("en-US", {
    minimumFractionDigits: fractionDigits,
    maximumFractionDigits: fractionDigits
  });
  return <>
      <table>
        <thead>
          <tr>
            <th style={{
    textAlign: "right"
  }}>Price</th>
            <th style={{
    textAlign: "right"
  }}>Requests</th>
            <th style={{
    textAlign: "right"
  }}>Cost / Request</th>
          </tr>
        </thead>
        <tbody>
          {billingTiers.map(tier => {
    const requests = tier.credits / creditsPerRequest;
    const costPerRequest = tier.costPerCredit * creditsPerRequest;
    return <tr key={tier.credits}>
                <td style={{
      textAlign: "right"
    }}>{formatCurrency(tier.price)}</td>
                <td style={{
      textAlign: "right"
    }}>{formatNumber(requests)}</td>
                <td style={{
      textAlign: "right"
    }}>
                  {formatCurrency(costPerRequest, 4)}
                </td>
              </tr>;
  })}
        </tbody>
      </table>

      <Tip>
        Each successful API request consumes{" "}<strong>{creditsPerRequest} credits (≈{" "}{formatCurrency(creditUnitPrice * creditsPerRequest, 4)})</strong>. Failed requests are not billed.

        <ul>
          <li>
            View pricing on the{" "}<a href="https://www.ailabtools.com/price?tab=api" target="_blank">pricing page</a>{" "}or manage credits in the{" "}<a href="https://www.ailabtools.com/developer/billing" target="_blank">developer platform</a>.
          </li>
          <li>
            Need more credits or an enterprise plan? Contact{" "}<a href="mailto:business@ailabtools.com">business@ailabtools.com</a>.
          </li>
        </ul>
      </Tip>
    </>;
};

export const ExperienceLinks = ({onlineUrl, apiUrl}) => {
  return <Tip>
      Explore this API through the{" "}<a href={`https://www.ailabtools.com${onlineUrl}`} target="_blank">👉 Online Experience 👈</a>{" "}or integrate it using the{" "}<a href={apiUrl}>👉 Run with API 👈</a>.
    </Tip>;
};

## Renderings show

| ORIGINAL IMAGE                     | RESULT IMAGE                   |
| :--------------------------------- | :----------------------------- |
| ![ORIGINAL IMAGE][OriginalImage-1] | ![RESULT IMAGE][ResultImage-1] |
| ![ORIGINAL IMAGE][OriginalImage-2] | ![RESULT IMAGE][ResultImage-2] |

<ExperienceLinks onlineUrl="/head-extraction" apiUrl="/docs/ai-cutout/portrait/hairstyle-extraction/api" />

## Billing Instructions

<BillingInstructions creditsPerRequest={1} />

## File Storage Policy

<FileStoragePolicy uploadedFiles responseType="URL" />

## Application Scenarios

* **Wig network try**: through the hair segmentation, after intercepting the hair of the self-timer, change it into a wig image, you can directly see the effect of the wig try, eliminating the need to return or replace the goods after online shopping wear inappropriate troubles.
* **Barbershop hairstyle try**: hairstylists guide customers through the tablet or cell phone shot of their own headshot, changed into a variety of hairstyles, have a more intuitive feeling. Customers can choose their favorite hairstyle and let the hairstylist take care of them.

## Featured Advantages

* **Precise segmentation of hair edges**: The edges of hair can be precisely segmented, and the editing result of the image after segmentation has no sense of contradiction.

[OriginalImage-1]: https://ai-resource.ailabtools.com/hairstyle-extraction/doc/OriginalImage-1.webp

[OriginalImage-2]: https://ai-resource.ailabtools.com/hairstyle-extraction/doc/OriginalImage-2.webp

[ResultImage-1]: https://ai-resource.ailabtools.com/hairstyle-extraction/doc/ResultImage-1.webp

[ResultImage-2]: https://ai-resource.ailabtools.com/hairstyle-extraction/doc/ResultImage-2.webp
