>Java >java지도 시간 >시각적으로 구별되는 N개의 색상을 자동으로 생성하려면 어떻게 해야 합니까?

시각적으로 구별되는 N개의 색상을 자동으로 생성하려면 어떻게 해야 합니까?

Patricia Arquette
Patricia Arquette원래의
2024-10-28 19:42:29339검색

How Can We Generate N Visually Distinct Colors Automatically?

N개의 "고유한" 색상을 자동으로 생성하는 방법은 무엇입니까?

이 질문은 시각적으로 구별되는 N개의 색상을 생성하는 과제를 제기합니다. RGB 큐브의 조각별 선형 함수는 색상을 생성할 수 있지만 항상 눈에 띄게 다른 것은 아닙니다. 다른 방법으로는 RGB 큐브를 격자로 분할하고 샘플링 포인트를 지정하는 방법이 있습니다.

그러나 제공된 솔루션은 여전히 ​​최적성이 부족합니다.

임의 N

  • "범주형 이미지를 위한 컬러 디스플레이"는 무료로 다운로드할 수 있는 솔루션을 제공합니다.
  • "지도 색상을 개인화하는 웹 서비스"는 곧 출시될 웹 서비스 솔루션을 제공합니다.
  • "An 고대비 색상 세트 선택을 위한 알고리즘"은 무료 C 구현을 제공합니다.
  • "고대비 색상 세트"는 이 문제를 해결하기 위한 첫 번째 알고리즘을 제시합니다.

N은 유한하고 상대적으로 작습니다

N이 작다면 미리 정의된 색상 목록을 사용하는 것이 좋습니다.

  • Boynton의 거의 혼동되지 않는 11가지 색상 목록
  • Kelly의 최대 대비 22가지 색상
  • MIT 학생이 만든 목록

언급된 기사에서는 색상 시스템 간 변환을 위한 유용한 도구도 제공합니다.

  • 색상 이론: Munsell HVC를 RGB/HSB/HSL로 변환하는 방법
  • http://chem8.org/uch/space-55036-do-blog-id-5333.html
  • https://metacpan.org/pod/Color::Library::Dictionary::NBS_ISCC

C#에서 사전 정의된 색상 목록의 코드 구현:

  • Kelly의 최대 대비 세트
  • Boynton의 최적화

16진수 및 채널당 8비트의 사전 정의된 색상:

  • Kelly 색상의 Python 구현
  • Kelly 색상의 JavaFX 구현

추가 팁:

  • 색상 정렬을 기억하세요. 최대한 구별할 수 있도록 색상을 기준으로 합니다.
  • 색각 장애가 있는 사람들을 위해 Boynton과 Kelly의 목록에 있는 색상을 사용하지 마세요.

위 내용은 시각적으로 구별되는 N개의 색상을 자동으로 생성하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.