KR101470264B1 - 이차원 슬라이더 컨트롤 - Google Patents

이차원 슬라이더 컨트롤 Download PDF

Info

Publication number
KR101470264B1
KR101470264B1 KR1020137006069A KR20137006069A KR101470264B1 KR 101470264 B1 KR101470264 B1 KR 101470264B1 KR 1020137006069 A KR1020137006069 A KR 1020137006069A KR 20137006069 A KR20137006069 A KR 20137006069A KR 101470264 B1 KR101470264 B1 KR 101470264B1
Authority
KR
South Korea
Prior art keywords
slider
image
sliding
shape
color
Prior art date
Application number
KR1020137006069A
Other languages
English (en)
Other versions
KR20130073942A (ko
Inventor
피터 워너
앤드류 브라이언트
제임스 클린턴 아른트
올리비에 페드코우
리안 앨랜 갤러거
Original Assignee
애플 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 애플 인크. filed Critical 애플 인크.
Publication of KR20130073942A publication Critical patent/KR20130073942A/ko
Application granted granted Critical
Publication of KR101470264B1 publication Critical patent/KR101470264B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

일부 실시예들은 애플리케이션을 제어하기 위한 그래픽 사용자 인터페이스(GUI)를 제공하는 컴퓨터 프로그램을 제공한다. GUI는 여러 개의 값을 정의하기 위한 연속 이차원 슬라이딩 영역을 포함한다. GUI는 또한 슬라이딩 영역 내에서 이동하기 위한 여러 개의 슬라이더를 포함한다. 각각의 슬라이더는 슬라이딩 영역 내의 슬라이더의 위치에 기초하여 여러 개의 값으로부터 하나 이상의 값을 선택한다. 선택된 값들은 애플리케이션의 하나 이상의 동작을 제어하기 위한 파라미터들이다.

Description

이차원 슬라이더 컨트롤{TWO-DIMENSIONAL SLIDER CONTROL}
많은 애플리케이션은 사용자로 하여금 애플리케이션들과 상호작용할 수 있게 해주는 그래픽 사용자 인터페이스(GUI)를 제공한다. 애플리케이션 GUI는 정보를 출력하고 그리고/또는 사용자로부터 정보를 수신하기 위한 임의 수의 상이한 GUI 컴포넌트(예를 들어, 위젯, 컨트롤)를 포함할 수 있다. 그러한 GUI 컴포넌트들의 예들은 선택 가능 명령들의 세트를 목록화하기 위한 메뉴들, 액션을 수행하기 위한 선택 가능 버튼들, 정보를 표시하고 그리고/또는 사용자 입력을 수신하기 위한 디스플레이 윈도들, 텍스트 입력을 수신하기 위한 텍스트 박스들 등을 포함한다.
슬라이더 컨트롤은 사용자로부터 입력 값들을 수신하기 위한 일 타입의 GUI 컴포넌트이다. 통상적으로, 슬라이더 컨트롤은 2개의 컴포넌트, 즉 슬라이딩 영역(예를 들어, "트랙") 및 슬라이더(예를 들어, "썸(thumb)")를 구비한다. 슬라이더는 단일 축 상에서 슬라이딩 영역을 따라 이동한다. 사용자는 슬라이딩 영역을 따라 슬라이더를 이동시킴으로써 값들의 정의된 범위로부터 하나의 값을 선택할 수 있다. 값들의 정의된 범위 내의 값들은 슬라이딩 영역을 따르는 상이한 위치들과 관련되며, 슬라이딩 영역을 따라 (예를 들어, 틱 마크(tick mark)를 이용하여) 지시될 수 있다. 따라서, 사용자는 슬라이더를 슬라이딩 영역을 따라 상이한 위치들로 이동시킴으로써(또는 슬라이딩 영역을 따라 지시된 값을 선택함으로써) 값들의 범위 내에서 상이한 값들을 선택할 수 있다.
슬라이더 컨트롤은 상이한 애플리케이션들의 상이한 기능들을 제어하는 데 사용될 수 있다. 예를 들어, 슬라이더 컨트롤은 미디어 재생 애플리케이션에 대한 볼륨 레벨, 이미지 편집 애플리케이션에 대한 이미지의 콘트라스트 값, 시스템 선호 설정 애플리케이션에 대한 모니터의 스크린 해상도 등을 제어하는 데 사용될 수 있다.
일부 슬라이더 컨트롤들은 현재 선택된 값을 표시하는 텍스트 박스도 포함한다. 그러한 슬라이더 컨트롤들은 사용자로 하여금 텍스트 박스 안에 직접 값을 타이핑할 수 있게 함으로써 사용자가 슬라이더 컨트롤에 대한 값을 설정할 수 있는 또 하나의 방법을 제공한다. 사용자가 텍스트 박스 안에 직접 값을 타이핑할 때, 슬라이더는 그 값에 대응하는 슬라이딩 영역을 따르는 위치로 자동으로 이동한다. 또한, 사용자가 슬라이더를 슬라이딩 영역을 따르는 위치로 이동시킴으로써 값을 선택할 때, 텍스트 박스는 선택된 값을 표시한다.
슬라이더 컨트롤은 일반적으로 애플리케이션에서의 단일 연산을 제어한다. 예를 들어, 일반적으로 미디어 편집 애플리케이션의 컬러 수정 컴포넌트는 편집되는 미디어(예를 들어, 이미지, 비디오 클립)에 대해 상이한 연산을 각각 수행하는 다수의 상이한 슬라이더 컨트롤을 사용한다. 다수의 상이한 컬러 수정 연산을 수행하기 위해서는, 다수의 상이한 슬라이더 컨트롤에 대한 다수의 조정이 이루어져야 한다. 따라서, 컬러 수정들을 수행하는 것은 그러한 애플리케이션의 사용자에게 지루하고 복잡할 수 있다. 더욱이, 그러한 애플리케이션의 사용자는 압도적인 수의 슬라이더 컨트롤들로 인해 편집되는 미디어에 대해 행해지는 조정들을 평가하기가 어려울 수 있다.
본 발명의 일부 실시예들은 그래픽 사용자 인터페이스(GUI) 내에 새로운 이차원 슬라이더 컨트롤을 제공한다. 이차원 슬라이더 컨트롤은 슬라이딩 영역 및 여러 개의 슬라이더(이하, 대체 가능하게 슬라이더 형상(slider shape)으로도 참조됨)를 포함한다. 이러한 실시예들에서, 슬라이더 형상들은 각각 슬라이딩 영역 내에 이동 가능하게 배치되어, 값들의 범위로부터 값을 선택할 수 있다. 일부 실시예들에서, 각각의 슬라이더 형상은 연산과 관련된다. 사용자는 슬라이딩 영역 내에 슬라이더 형상을 이동 가능하게 배치하여 연산에 대한 값들의 범위로부터 값을 선택함으로써 슬라이더 형상과 관련된 연산을 제어할 수 있다. 사용자는 단일 슬라이딩 영역 내에 다수의 슬라이더를 이동 가능하게 배치함으로써 다수의 연산을 제어할 수 있다. 더욱이, 다수의 속성을 정의하는 다수의 슬라이더 형상을 배치하기 위한 하나의 영역으로서 역할함으로써, 사용자는 제어되는 다수의 연산을 관찰하고, 상이한 시점들에서 이루어지는 다수의 슬라이더 형상 조정의 느낌을 얻을 수 있다.
상이한 실시예들은 상이한 이차원 좌표계들을 이용하여 슬라이딩 영역 내의 위치들을 기술한다. 예를 들어, 일부 실시예들은 극 좌표계를 이용하여 슬라이딩 영역 내의 위치들을 기술한다. 따라서, 슬라이딩 영역 내의 위치는 방사상 거리 및 각도에 의해 표현된다. 방사상 거리 및 각도가 슬라이딩 영역 내의 위치들을 기술하는 데 사용되므로, 이들은 아래에서 위치 변수들로서 참조된다.
일부 실시예들은 데카르트 좌표계를 이용하여 슬라이딩 영역 내의 위치들을 기술한다. 따라서, 슬라이딩 영역 내의 위치는 2개의 거리, 즉 특정 기준선(예를 들어, x축, y축)으로부터의 각각의 거리에 의해 표현된다. 방사상 거리 및 각도와 같이, 특정 기준선으로부터의 거리들도 아래에서 위치 변수들로서 참조된다. 일부 실시예들에서는 이차원 포물선 좌표계와 같은 다른 이차원 좌표계들이 슬라이딩 영역 내의 위치들을 기술하는 데 사용될 수 있다. 게다가, 일부 실시예들에서 슬라이딩 영역 내의 슬라이더 형상들의 위치들은 단일 좌표계를 이용하여 기술될 수 있다.
일부 실시예들에서는, 상이한 위치 변수들 각각에 대해 값들의 범위가 정의된다. 그러한 실시예들에서, 특정 위치 변수에 대한 가능한 값들(예를 들어, 방사상 거리 위치 변수에 대한 상이한 방사상 거리들, 각도 위치 변수에 대한 상이한 각도들 등) 각각은 값들의 범위 내의 하나 이상의 값과 관련된다. 일부 실시예들에서는 모든 상이한 위치 변수들에 대해 값들의 동일 범위가 정의되는 반면, 다른 실시예들에서는 상이한 위치 변수들 중 일부 또는 전부에 대한 값들의 범위가 상이하게 정의된다. 더구나, 상이한 실시예들에서 값들의 범위 내의 값들은 상이하게 정의될 수 있다. 예를 들어, 값들의 범위 내의 값들은 0 내지 255, -127 내지 128, 500-600 등과 같은 연속 정수들의 세트로서 정의될 수 있다. 일부 실시예들은 값들의 범위 내의 값들을 일정한 간격의 정수들의 세트(예를 들어, 5 간격의 0 내지 100)로서 정의한다. 또한, 상이한 실시예들에서 값들의 범위 내의 값들의 수는 다를 수 있으며, 값들의 범위가 어떻게 정의되는지에 기초한다. 따라서, 값들의 범위 내의 값들은 임의 수의 상이한 방식으로 정의될 수 있다.
전술한 바와 같이, 일부 실시예들에서 값들의 범위가 특정 위치 변수의 값들에 대해 정의될 수 있고, 슬라이딩 영역 내의 위치들은 위치 변수에 의해 기술될 수 있다. 따라서, 슬라이딩 영역 내의 모든 위치는 특정 위치 변수에 의해 기술될 수 있으므로 슬라이딩 영역 내의 모든 위치는 값들의 범위 내의 값과 연관된다. 이러한 방식으로, 슬라이딩 영역 내의 슬라이더 형상의 위치를 이용하여, (예를 들어, 슬라이더 형상의 위치에 대한 특정 위치 변수의 값과 관련된 값들의 범위 내의 값을 식별함으로써) 위치 변수에 대해 정의된 값들의 범위로부터 값을 지정할 수 있다.
일부 실시예들에서, 상이한 슬라이더 형상들은 상이한 위치 변수들에 기초하여 값들의 범위로부터 값을 선택한다. 예를 들어, 일부 실시예들에서, 하나의 슬라이더 형상은 방사상 거리 위치 변수에 기초하여 값들의 범위로부터 값을 선택하고, 다른 슬라이더 형상은 x축 위치 변수에 기초하여 값들의 범위로부터 값을 선택하며, 또 다른 슬라이더 형상은 각도 위치 변수에 기초하여 값들의 범위로부터 값을 선택한다.
일부 실시예들에서, 슬라이더 형상들은 원으로 표시된다. 그러나, 다른 실시예들은 슬라이더 형상들을 다르게 표시한다. 슬라이더 형상들은 임의 수의 상이한 시각적 표현(예를 들어, 점, 정사각형, 썸네일, 아이콘, 컬러, 텍스트 등)을 이용하여 표현될 수 있다. 일부 실시예들에서, 슬라이더 형상들은 동일한 시각적 표현을 이용하여 표시된다. 다른 실시예들에서, 슬라이더 형상들은 슬라이더 형상들과 관련된 연산에 기초하여 상이하게 표시된다. 즉, 동일 연산과 관련된 슬라이더 형상들은 동일한 시각적 표현을 이용하여 표시되고, 상이한 연산들과 관련된 슬라이더 형상들은 상이한 시각적 표현들을 이용하여 표시된다.
이차원 슬라이더 컨트롤의 슬라이딩 영역의 구역은 임의 수의 상이한 방식(예를 들어, 크기, 형상 등)으로 정의될 수 있다. 예를 들어, 이차원 슬라이더 컨트롤의 슬라이딩 영역의 구역은 일부 실시예들에서 원으로 정의된다. 정사각형, 직사각형, 삼각형, 타원 등과 같은 다른 기하 형상들도 사용될 수 있다.
일례로서, 이차원 슬라이더 컨트롤의 일부 실시예들은 내측 원과 외측 원에 의해 정의되는 링 형상 슬라이딩 영역을 포함한다. 일부 실시예들에서, 외측 원은 값들의 범위의 최소 값을 나타내고, 내측 원은 값들의 범위의 최대 값을 나타낸다. 이러한 실시예들의 링 형상 슬라이딩 영역은 다수의 슬라이더 형상이 슬라이딩 영역 내에 배치되게 하여 서로 중복 없이 값들의 범위로부터 최대 값을 동시에 선택하는 것을 가능하게 한다.
이차원 슬라이더 컨트롤의 일부 실시예들은 슬라이딩 영역에 더하여 배경 영역을 제공한다. 일부 실시예들에서, 배경 영역은 슬라이더 형상들이 배치될 수 있는 이차원 슬라이더 컨트롤 내의 구역이다. 일부 실시예들에서, 슬라이더 형상이 배경 영역 내에 배치될 때, 슬라이더 형상과 관련된 연산(들)은 기능하지 않으며, 슬라이더 형상은 디스에이블, 비활성, 오프 상태 등으로서 참조된다. 슬라이더 형상이 슬라이딩 영역 내에 배치될 때, 슬라이더 형상과 관련된 연산(들)은 기능하며, 슬라이더 형상은 인에이블, 활성, 온 상태 등으로 참조된다. 따라서, "오프" 위치 또는 최소 값에 대응하는 슬라이딩 영역 내에 슬라이더 형상을 배치하는 대신에, 사용자는 혼란을 줄이기 위해 또는 사용자가 이 시간에 슬라이더 형상을 사용하기를 원하지 않을 때 슬라이더 형상을 배경 영역 내에 배치할 수 있다. 게다가, 일부 실시예들의 배경 영역은 슬라이더 형상들과 관련된 연산들을 제어하기 위해 (슬라이더 형상들 대신에) 슬라이딩 영역이 이동 가능하게 배치될 수 있는 영역을 제공한다.
이차원 슬라이더 컨트롤의 일부 실시예들은 임의의 일정한 수의 슬라이더 형상을 포함할 수 있다. 일부 실시예들에서, 슬라이더 형상들의 수는 사용자가 제어하도록 허가된 연산들의 수에 기초한다. 더구나, 일부 실시예들은 슬라이더 형상들이 이차원 슬라이더 컨트롤의 슬라이딩 영역 내에 이동 가능하게 배치되는 것만을 허가하는 반면, 다른 실시예들은 이차원 슬라이더 컨트롤의 슬라이더 형상들이 이차원 슬라이더 컨트롤의 디스플레이 구역 내의 어느 곳에나(예를 들어, 슬라이딩 영역의 내측은 물론 외측에도) 이동 가능하게 배치되는 것을 허가한다.
이차원 슬라이더 컨트롤에 대해, 상이한 실시예들은 슬라이더 형상들에 대한 상이한 시작 구성들을 제공한다. 예를 들어, 일부 실시예들은 슬라이더 형상들이 "제로 아웃(zero out)"되는 시작 구성을 제공한다. 즉, 슬라이더 형상들은 슬라이더 형상들과 관련된 연산들이 오프(예를 들어, 비활성화, 디스에이블, 0의 값의 선택, 최소 값의 선택 등)되도록 슬라이딩 영역 내에 배치된다. 이 분야의 통상의 기술자는, 슬라이더 형상들의 "제로 아웃"이 값들의 정의된 범위 내의 값들과 슬라이딩 영역 내의 위치들이 어떻게 관련되는지에 의존하며, 따라서 슬라이더 형상들을 "제로 아웃"하기 위하여 임의 수의 상이한 시작 구성들이 가능하다는 것을 인식할 것이다. 게다가, 일부 실시예들은 슬라이더 형상에 널(null) 값을 할당함으로써 슬라이더 형상을 "제로 아웃"한다. 더욱이, 다른 실시예들은 슬라이더 형상들에 대한 다른 시작 구성들을 제공한다. 예를 들어, 이차원 슬라이더 컨트롤의 일부 실시예들은 슬라이더 형상들이 디폴트 위치들/값들에 배치되는 시작 구성을 제공한다. 일부 실시예들은 슬라이딩 영역 밖에서 슬라이더 형상들을 시작한다.
이차원 슬라이더 컨트롤의 일부 실시예들은 동적인 수의 슬라이더 형상들을 허가한다. 즉, 이차원 슬라이더 컨트롤 내의 슬라이더 형상들의 수는 임의의 주어진 시간에 변할 수 있다. 특히, 그러한 실시예들은 슬라이더 형상들이 추가 및 삭제되는 것은 물론, 이차원 슬라이더 컨트롤의 슬라이딩 영역 내에 이동 가능하게 배치되는 것도 허가한다. 상이한 실시예들은 슬라이더 형상들을 이차원 슬라이더 컨트롤에 추가하는 상이한 방법들을 제공한다. 예를 들어, 일부 실시예들은 키스트로크, 키스트로크들의 조합, 핫키, 풀다운 또는 풀업 메뉴로부터 선택된 옵션 또는 임의의 다른 적절한 방법을 이용하여 슬라이더 형상들을 이차원 슬라이더 컨트롤에 추가한다.
일부 실시예들에서, 이차원 슬라이더 컨트롤은 다양한 이미지 처리 연산들을 수행하기 위한 것이다. 이러한 실시예들 중 일부는 슬라이딩 영역의 중심으로부터의 방사상 거리에 기초하여 샤프니스(sharpness) 연산(예를 들어, 언샤프 마스크(unsharp mask))을 편집되는 이미지에 적용하기 위한 슬라이더 형상들을 제공한다. 다른 이미지 처리 연산들(예를 들어, 채도(saturation), 콘트라스트(contrast), 명도(brightness), 컬러 균형, 잡음 제거 등)을 수행하는 다른 슬라이더 형상들이 상이한 실시예들에서 제공될 수 있다. 일부 실시예들에서, 이미지 처리 연산은 다른 위치 변수들(예를 들어, 각도, x축 거리, y축 거리)에 기초할 수 있다.
일부 실시예들에서, 이차원 슬라이더 컨트롤을 사용하여 애플리케이션의 연산을 제어하기 위한 프로세스는 슬라이더 형상 또는 슬라이딩 영역이 이차원 슬라이더 컨트롤 내에 이동 가능하게 배치될 때 시작된다. 슬라이딩 영역 내의 슬라이더 형상의 위치 및 슬라이딩 영역의 위치가 식별된다. 슬라이딩 영역에 대한 위치 변수(예를 들어, 방사상 거리, 각도, x축 거리, y축 거리)가 결정되고, 결정된 위치 변수에 대해 정의된 값들의 범위 내의 값이 식별된다. 이어서, 슬라이더 형상에 대한 임의의 나머지 위치 변수들이 유사하게 처리된다.
모든 위치 변수들이 처리된 후, 식별된 값들의 세트에 기초하여 적어도 하나의 애플리케이션의 파라미터들의 세트가 조정된다. 전술한 바와 같이, 사용자는 일부 실시예들의 이차원 슬라이더 컨트롤 내에 슬라이더 형상을 이동 가능하게 배치하여, 애플리케이션의 연산을 제어할 수 있다. 애플리케이션의 연산을 제어하는 한 가지 방법은 연산에 대한 파라미터들의 세트를 조정하는 것이다. 일부 실시예들에서 애플리케이션은 컴퓨팅 장치에서 실행되는 임의의 독립 애플리케이션일 수 있는 반면, 다른 실시예들에서 애플리케이션은 다른 애플리케이션의 일부인 컴포넌트이다. 애플리케이션은 일부 실시예들에서 컴퓨팅 장치의 운영 체제의 일부인 애플리케이션일 수 있다.
위의 요약은 본 발명의 일부 실시예들에 대한 간단한 소개로서 역할하는 것을 의도한다. 이 요약은 본 명세서에서 개시되는 모든 발명 내용의 소개 또는 개요인 것을 의도하지 않는다. 이어지는 상세한 설명 및 상세한 설명에서 참조되는 도면들은 요약에서 설명된 실시예들은 물론, 다른 실시예들도 더 설명할 것이다. 따라서, 본 명세서에 의해 설명되는 모든 실시예들을 이해하기 위해서는 요약, 상세한 설명 및 도면들의 충분한 검토가 필요하다. 더욱이, 청구되는 발명들은 발명들의 사상으로부터 벗어나지 않고 다른 특정 형태들로 구현될 수 있으므로, 요약, 상세한 설명 및 도면 내의 예시적인 상세들에 의해 한정되는 것이 아니라, 첨부된 청구항들에 의해 정의되어야 한다.
본 발명의 새로운 특징들은 첨부된 청구항들에서 설명된다. 그러나, 설명의 목적을 위해, 본 발명의 여러 실시예가 아래의 도면들에서 설명된다.
도 1은 일부 실시예들의 이차원 슬라이더 컨트롤을 개념적으로 나타낸다.
도 2는 일부 실시예들의 다른 이차원 슬라이더 컨트롤을 개념적으로 나타낸다.
도 3은 일부 실시예들의 또 다른 이차원 슬라이더 컨트롤을 개념적으로 나타낸다.
도 4는 일부 실시예들의 또 다른 이차원 슬라이더 컨트롤을 개념적으로 나타낸다.
도 5는 일부 실시예들의 또 다른 이차원 슬라이더 컨트롤을 개념적으로 나타낸다.
도 6은 일부 실시예들의 이차원 슬라이더 컨트롤을 포함하는 이미지 처리 애플리케이션의 GUI를 개념적으로 나타낸다.
도 7은 일부 실시예들의 이차원 슬라이더 컨트롤을 사용하여 애플리케이션의 연산을 제어하기 위한 프로세스를 개념적으로 나타낸다.
도 8은 일부 실시예들의 이차원 슬라이더 컨트롤을 포함하는 미디어 편집 애플리케이션의 다른 GUI를 개념적으로 나타낸다.
도 9는 본 발명의 일부 실시예들에 따른 도 8의 GUI를 사용하는 컬러 수정 연산을 개념적으로 나타낸다.
도 10은 본 발명의 일부 실시예들에 따른 도 8의 GUI를 사용하는 다른 컬러 수정 연산을 개념적으로 나타낸다.
도 11은 본 발명의 일부 실시예들에 따른 도 8의 GUI를 사용하는 또 다른 컬러 수정 연산을 개념적으로 나타낸다.
도 12는 일부 실시예들의 이차원 슬라이더 컨트롤을 포함하는 미디어 편집 애플리케이션의 GUI를 사용하는 또 다른 컬러 수정 연산을 개념적으로 나타낸다.
도 13은 본 발명의 일부 실시예들에 따른 도 12의 GUI를 사용하는 컬러 변경 연산을 개념적으로 나타낸다.
도 14는 본 발명의 일부 실시예들에 따른 도 8의 GUI를 사용하는 다수의 컬러 수정 연산을 개념적으로 나타낸다.
도 15는 일부 실시예들의 이차원 슬라이더 컨트롤 내의 슬라이더 형상을 사용하여 이미지에 컬러 수정 연산을 적용하기 위한 일부 실시예들의 프로세스를 개념적으로 나타낸다.
도 16은 컬러 캐스트 연산을 수행하기 위한 일부 실시예들의 이차원 슬라이더 컨트롤을 포함하는 미디어 편집 애플리케이션의 GUI를 개념적으로 나타낸다.
도 17은 이미지에 대해 컬러 수정 연산을 수행하기 위한 일부 실시예들의 다른 프로세스를 개념적으로 나타낸다.
도 18은 본 발명의 일부 실시예들에 따른 도 16의 GUI를 사용하는 컬러 록킹 연산을 개념적으로 나타낸다.
도 19는 컬러 캐스트 연산을 수행하기 위한 일부 실시예들의 다른 이차원 슬라이더 컨트롤을 개념적으로 나타낸다.
도 20은 일부 실시예들의 이차원 슬라이더 컨트롤을 사용하는 휘도 범위 연산을 개념적으로 나타낸다.
도 21a-b는 일부 실시예들의 이차원 슬라이더 컨트롤을 포함하는 미디어 편집 애플리케이션의 GUI를 개념적으로 나타낸다.
도 22는 일부 실시예들의 이차원 슬라이더 컨트롤의 스위칭 가능 연산 슬라이더 형상을 개념적으로 나타낸다.
도 23은 일부 실시예들의 다중 연산 슬라이더 형상을 개념적으로 나타낸다.
도 24는 일부 실시예들의 예시적인 슬라이더 형상 그룹핑 동작을 개념적으로 나타낸다.
도 25는 일부 실시예들의 맞춤형 슬라이더 형상을 개념적으로 나타낸다.
도 26은 일부 실시예들의 슬라이딩 영역 동작을 개념적으로 나타낸다.
도 27은 일부 실시예들의 다른 슬라이딩 영역 동작을 개념적으로 나타낸다.
도 28은 일부 실시예들에서 이미지에 대해 컬러 수정 연산을 수행하기 위한 프로세스를 개념적으로 나타낸다.
도 29는 일부 실시예들의 이차원 슬라이더 컨트롤을 제공하는 미디어 편집 애플리케이션의 테이블 구현의 일례를 개념적으로 나타낸다.
도 30은 일부 실시예들의 컬러 혼합 프로세서의 소프트웨어 아키텍처를 개념적으로 나타낸다.
도 31은 본 발명의 일부 실시예들을 구현하는 컴퓨터 시스템을 개념적으로 나타낸다.
아래의 설명에서는 설명의 목적을 위해 다양한 상세들이 설명된다. 그러나, 이 분야의 통상의 기술자는 본 발명이 이러한 특정 상세들을 사용하지 않고도 실시될 수 있다는 것을 인식할 것이다. 예를 들어, 이차원 슬라이더 컨트롤의 다양한 실시예들이 본원의 전반에서 설명된다. 통상의 기술자는 동일 또는 유사한 특징들 및 프로세스들이 삼차원 슬라이더 컨트롤에 대해서도 구현될 수 있다는 것을 인식할 것이다.
본 발명의 일부 실시예들은 그래픽 사용자 인터페이스(GUI) 내에 새로운 이차원 슬라이더 컨트롤을 제공한다. 이차원 슬라이더 컨트롤은 슬라이딩 영역, 및 아래에서 슬라이더 형상으로 참조되는 여러 슬라이더(디스크, 퍽(puck), 슬라이더 형상 등)를 포함한다. 이러한 실시예들에서, 슬라이더 형상들은 값들의 범위로부터 값을 선택하기 위해 슬라이딩 영역 내에 각각 이동 가능하게 배치될 수 있다. 일부 실시예들에서, 각각의 슬라이더 형상은 연산과 관련된다. 사용자는 슬라이딩 영역 내에 슬라이더 형상을 이동 가능하게 배치하여 연산에 대한 값들의 범위로부터 값을 선택함으로써 슬라이더 형상과 관련된 연산을 제어할 수 있다. 사용자는 단일 슬라이딩 영역 내에 다수의 슬라이더를 이동 가능하게 배치함으로써 다수의 연산을 제어할 수 있다. 더욱이, 다수의 속성을 정의하는 다수의 슬라이더 형상을 배치하기 위한 하나의 영역으로 역할함으로써, 사용자는 제어되는 다수의 연산을 관찰하고, 상이한 시점들에서 이루어지는 다수의 슬라이더 형상 조정의 느낌을 얻을 수 있다.
도 1은 일부 실시예들의 이차원 슬라이더 컨트롤(100)을 개념적으로 나타낸다. 특히, 이 도면은 3개의 상이한 스테이지(105-115)에서 이차원 슬라이더 컨트롤(100)을 나타낸다. 이들 스테이지 각각은 아래에 더 상세히 설명된다. 그러나, 이차원 슬라이더 컨트롤(100)의 요소들이 먼저 소개될 것이다.
도 1에 도시된 바와 같이, 이차원 슬라이더 컨트롤(100)은 연속 슬라이딩 영역(120), 중심(125), 슬라이더 형상들(130-140) 및 축들(145, 150)을 포함한다. 이 도면에서 축들(145, 150)은 아래에 더 상세히 설명되는 슬라이딩 영역(120) 내의 위치들을 기술하기 위한 다양한 좌표계들의 사용을 설명하기 위해 도시된다.
슬라이딩 영역(120)은 연속 이차원 구역이며, 슬라이더 형상들은 그 안에 이동 가능하게 배치될 수 있다. 후술하는 바와 같이, 일부 실시예들의 슬라이딩 영역(120)은 값들의 단일 스케일을 제공하며, 이로부터 다수의 슬라이더 형상 각각은 슬라이딩 영역(120) 내의 그들의 위치들에 기초하여 값을 선택할 수 있다.
상이한 실시예들은 상이한 이차원 좌표계들을 사용하여 슬라이딩 영역(120) 내의 위치들을 기술한다. 예를 들어, 일부 실시예들은 극 좌표계를 사용하여 슬라이딩 영역(120) 내의 위치들을 기술한다. 따라서, 슬라이딩 영역(120) 내의 위치는 방사상 거리 및 각도에 의해 표현된다. 그러한 실시예들에서, 중심(125)은 고정된 기준점(즉, 극)이며, 그로부터 방사상 거리들이 결정된다. 게다가, 중심(125)으로부터 시작하여 축(145)(즉, 극 축)을 따라 우측을 향하는 선은 고정된 방향이며, 그로부터 각도들이 결정된다. 방사상 거리 및 각도는 슬라이딩 영역(120) 내의 위치들을 기술하는 데 사용되므로, 이들은 아래에서 위치 변수들로서 참조된다.
일부 실시예들은 데카르트 좌표계를 사용하여 슬라이딩 영역(120) 내의 위치들을 기술한다. 따라서, 슬라이딩 영역(120) 내의 위치는 2개의 거리, 즉 특정 기준선(예를 들어, x축, y축)으로부터의 각각의 거리에 의해 표현된다. 그러한 실시예들에서, 중심(125)은 원점이고, 축(145)(예를 들어, x축) 및 축(150)(예를 들어, y축)은 2개의 기준선이고, 그로부터 거리들이 결정된다. 전술한 방사상 거리 및 각도와 마찬가지로, 데카르트 좌표계와 관련하여 슬라이딩 영역 내의 위치들을 기술하는 데 사용되는 특정 기준선으로부터의 거리들도 아래에서 위치 변수들로서 참조된다.
이차원 좌표계들의 두 가지 예가 위에 설명되었다. 그러나, 이차원 포물선 좌표계와 같은 다른 이차원 좌표계들도 일부 실시예들에서 슬라이딩 영역(120) 내의 위치들을 기술하는 데 사용될 수 있다. 게다가, 슬라이더 형상들(130, 140)의 위치들이 상이한 좌표계들을 사용하여 기술되는 것으로 설명되지만, 슬라이더 형상들(130-140)의 위치들은 일부 실시예들에서 단일 좌표계를 사용하여 기술될 수 있다.
일부 실시예들에서, 상이한 위치 변수들 각각에 대해 값들의 범위가 정의된다. 그러한 실시예들에서, 특정 위치 변수에 대한 가능한 값들(예를 들어, 방사상 거리 위치 변수에 대한 상이한 방사상 거리들, 각도 위치 변수에 대한 상이한 각도들 등) 각각은 값들의 범위 내의 하나 이상의 값과 관련된다. 일부 실시예들에서는 모든 상이한 위치 변수들에 대해 값들의 동일한 범위가 정의되는 반면, 다른 실시예들에서는 상이한 위치 변수들 중 일부 또는 전부에 대한 값들의 범위가 상이하게 정의된다. 더구나, 상이한 실시예들에서는 값들의 범위 내의 값들이 상이하게 정의될 수 있다. 예를 들어, 값들의 범위 내의 값들은 0 내지 255, -127 내지 128, 500-600 등과 같은 연속 정수들의 세트로서 정의될 수 있다. 일부 실시예들은 값들의 범위 내의 값들을 일정한 간격의 정수들의 세트(예를 들어, 5 간격의 0 내지 100)로서 정의한다. 또한, 상이한 실시예들에서 값들의 범위 내의 값들의 수는 다를 수 있으며, 값들의 범위가 어떻게 정의되는지에 기초한다. 따라서, 값들의 범위 내의 값들은 임의 수의 상이한 방식으로 정의될 수 있다.
전술한 바와 같이, 일부 실시예들에서 값들의 범위가 특정 위치 변수의 값들에 대해 정의될 수 있고, 슬라이딩 영역(120) 내의 위치들은 위치 변수에 의해 기술될 수 있다. 따라서, 슬라이딩 영역(120) 내의 모든 위치는 특정 위치 변수에 의해 기술될 수 있으므로, 슬라이딩 영역(120) 내의 모든 위치는 값들의 범위 내의 값과 연관된다. 이러한 방식으로, 슬라이딩 영역(120) 내의 슬라이더 형상의 위치를 이용하여, (예를 들어, 슬라이더 형상의 위치에 대한 특정 위치 변수의 값과 관련된 값들의 범위 내의 값을 식별함으로써) 위치 변수에 대해 정의된 값들의 범위로부터 값을 지정할 수 있다.
일부 실시예들에서, 상이한 슬라이더 형상들은 상이한 위치 변수들에 기초하여 값들의 범위로부터 값을 선택한다. 예를 들어, 일부 실시예들에서, 슬라이더 형상(135)은 방사상 거리 위치 변수에 기초하여 값들의 범위로부터 값을 선택하고, 슬라이더 형상(130)은 x축 거리 위치 변수에 기초하여 값들의 범위로부터 값을 선택하며, 슬라이더 형상(140)은 각도 위치 변수에 기초하여 값들의 범위로부터 값을 선택한다. 그러나, 상이한 실시예들에서 슬라이더 형상은 상이한 위치 변수에 기초하여 값들의 범위로부터 값을 선택하도록 정의될 수 있다.
일부 실시예들에서, 슬라이더 형상은 슬라이딩 영역(120) 내의 슬라이더 형상의 다수의 위치 변수에 기초하여 다수의 값을 선택한다. 그러한 실시예들에서, 각각의 값은 상이한 위치 변수에 기초하여 값들의 상이한 범위로부터 선택된다. 슬라이더 형상(130)을 일례로 사용하면, 일부 실시예들의 슬라이더 형상(130)은 방사상 거리 위치 변수에 기초하여 값들의 제1 범위로부터 값을 선택하고, 또한 각도 위치 변수에 기초하여 값들의 제2 범위로부터 값을 선택한다. 즉, 슬라이더 형상(130)은 2개의 값을 선택하기 위해 슬라이딩 영역(120) 내에 이동 가능하게 배치될 수 있다. 다른 실시예들에서, 슬라이더 형상은 상이한 수의 상이한 위치 변수들에 기초하여 값들의 상이한 범위들로부터 값들을 선택하도록 정의될 수 있다.
슬라이딩 영역(120) 내의 단일 슬라이더 형상의 배치를 통해 다수의 값을 선택하는 것은 사용자로 하여금 다수의 연산을 동시에 제어할 수 있게 해준다(즉, 다수의 연산이 특정 슬라이더 형상과 관련될 수 있다). 일부 그러한 실시예들에서, 각각의 선택된 값은 상이한 연산을 제어한다. 다른 그러한 실시예들에서, 값들 중 일부는 상이한 연산들을 각각 제어하며, 값들 중 일부는 단일 연산을 함께 제어한다. 또 다른 그러한 실시예들에서는, 다수의 선택된 값들이 단일 연산을 제어한다.
이제, 도 1을 참조하여 이차원 슬라이더 컨트롤(100)의 동작을 설명한다. 제1 스테이지(105)에서, 슬라이더 형상들(130-140)은 슬라이딩 영역(120) 내의 다양한 위치들에 배치된다. 구체적으로, 슬라이더 형상(130)은 축(145)의 좌측의 슬라이딩 영역(120)의 하부 근처에 배치되고, 슬라이더 형상(135)은 슬라이딩 영역(120)의 우하부에 배치되며, 슬라이더 형상(140)은 슬라이딩 영역(120)의 우측에 축(145) 위에 배치된다.
제2 스테이지(110)는 슬라이딩 영역(120) 내에 이동 가능하게 배치된 슬라이더 형상(140)을 나타낸다. 이 예에서, 슬라이더 형상(140)의 위치는 극 좌표계로 도시된다. 도시된 바와 같이, 슬라이더 형상(140)은 거리(r1) 및 각도(θ1)의 위치에서 시작하고, 화살표로 도시된 바와 같이 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 거리(r2) 및 각도(θ2)의 위치로 이동 가능하게 배치된다. 이동은 슬라이더 형상(140)의 방사상 거리 및 각도 위치 변수들 중 적어도 하나의 변수의 값들을 변경한다. 이러한 방식으로, 슬라이딩 영역(120) 내에 슬라이더 형상(140)을 이동 가능하게 배치하는 것은 방사상 거리 위치 변수 및 각도 위치 변수에 대한 상이한 값들을 선택할 수 있다.
제3 스테이지(115)는 슬라이딩 영역(120) 내에 이동 가능하게 배치된 슬라이더 형상(130)을 나타낸다. 그러나, 이 예에서, 슬라이더 형상(130)의 위치는 데카르트 좌표계로 도시된다. 슬라이더 형상(130)은 x1 및 y1의 위치에서 시작하고, (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) x2 및 y2의 위치로 이동 가능하게 배치되며, 따라서 슬라이더 형상(130)의 x축 거리 및 y축 거리 위치 변수들의 값들이 변경된다. 따라서, 슬라이딩 영역(120) 내에 슬라이더 형상(130)을 이동 가능하게 배치하는 것은 x축 위치 변수 및 y축 위치 변수에 대한 상이한 값들을 선택할 수 있다.
도 1에서, 슬라이더 형상들(130-140)은 원으로 표시된다. 그러나, 상이한 실시예들은 슬라이더 형상들을 다르게 표시한다. 슬라이더 형상들은 임의 수의 상이한 시각적 표현(예를 들어, 점, 정사각형, 썸네일, 아이콘, 컬러, 텍스트 등)을 이용하여 표시될 수 있다. 이차원 슬라이더 컨트롤(100)과 같은 일부 실시예들에서, 슬라이더 형상들은 동일한 시각적 표현을 이용하여 표시된다. 다른 실시예들에서, 슬라이더 형상들은 슬라이더 형상들과 관련된 연산에 기초하여 상이하게 표시된다. 즉, 동일 연산과 관련된 슬라이더 형상들은 동일한 시각적 표현을 이용하여 표시되고, 상이한 연산들과 관련된 슬라이더 형상들은 상이한 시각적 표현들을 이용하여 표시된다.
이차원 슬라이더 컨트롤의 슬라이딩 영역의 구역은 임의 수의 상이한 방식(예를 들어, 크기, 형상 등)으로 정의될 수 있다. 예를 들어, 도 1은 이차원 슬라이더 컨트롤(100)의 슬라이딩 영역(120)의 구역이 원으로 정의되는 것을 도시한다. 정사각형, 직사각형, 삼각형, 타원 등과 같은 다른 기하 형상들도 사용될 수 있다.
도 2는 일부 실시예들의 이차원 슬라이더 컨트롤(200)을 개념적으로 나타낸다. 전술한 바와 같이, 이차원 슬라이더 컨트롤의 상이한 실시예들의 슬라이딩 영역은 상이하게 정의된다. 특히, 도 2는 링 형상 슬라이딩 영역(220), 중심(125) 및 슬라이더 형상들(235-245)을 포함하는 이차원 슬라이더 컨트롤(200)을 나타낸다. 도 2는 3개의 상이한 스테이지(205-215)에서 이차원 슬라이더 컨트롤(200)을 나타낸다.
도시된 바와 같이, 내측 원(225)과 외측 원(230)이 슬라이딩 영역(220)을 정의한다. 일부 실시예들에서, 외측 원(230)은 값들의 범위 중 최소 값을 나타내고, 내측 원(225)은 값들의 범위 중 최대 값을 나타낸다. 일부 그러한 실시예들에서, 슬라이더 형상을 외측 원(230) 상에 또는 그 근처에 배치하는 것은 슬라이더 형상과 관련된 연산에 대한 최소 값(예를 들어, 0, 낮음(low), 오프(off) 등)을 선택하고, 슬라이더 형상을 내측 원(225) 상에 또는 그 근처에 배치하는 것은 슬라이더 형상과 관련된 연산에 대한 최대 값(예를 들어, 100, 높음(high), 온(on) 등)을 선택하며, 슬라이더 형상을 외측 원(230)과 내측 원(225) 사이에 배치하는 것은 중간 어딘가의 값(예를 들어, 50, 중간(medium) 등)을 선택한다.
제1 스테이지(205)는 이차원 슬라이더 컨트롤(200)의 슬라이딩 영역(220) 내에 배치된 슬라이더 형상들(235-245)을 나타낸다. 구체적으로, 슬라이더 형상(235)은 외측 원(230)의 좌상에 배치되고, 슬라이더 형상(240)은 슬라이딩 영역(220)의 좌하 구역에서 내측 원(225)과 외측 원(230) 사이에 배치되며, 슬라이더 형상(245)은 내측 원(225)의 우측에 배치된다. 따라서, 이 스테이지에서, 슬라이더 형상(235)은 값들의 범위로부터 최소 값을 선택하고, 슬라이더 형상(240)은 값들의 범위로부터 최소 값과 최대 값 사이인 값을 선택하며, 슬라이더 형상(245)은 값들의 범위로부터 최대 값을 선택한다.
제2 스테이지(210)에서, 슬라이더 형상(235)은 슬라이딩 영역(220) 내에서 이동한다. 도시된 바와 같이, 슬라이더 형상은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(220)의 외측 원(230) 상의 위치로부터 내측 원(225) 상의 위치로 이동 가능하게 배치된다. 따라서, 슬라이더 형상(235)은 이 스테이지에서 값들의 범위로부터 최대 값을 선택한다. 이 스테이지는 또한 슬라이딩 영역(220)의 형상이 슬라이더 형상들(235, 245)로 하여금 서로 중복 없이 동시에 최대 값을 선택할 수 있게 한다는 것을 나타낸다.
제3 스테이지(215)는 슬라이딩 영역(220) 내에서 이동하는 슬라이더 형상(240)을 나타낸다. 구체적으로, 슬라이더 형상(240)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(220)의 내측 원(225) 상으로 이동 가능하게 배치된다. 이 스테이지에서, 슬라이더 형상(240)은 값들의 범위로부터 최대 값을 선택한다. 이 스테이지는 또한 슬라이더 형상들(235-245) 각각이 서로 중복 없이 최대 값을 선택하도록 내측 원(225) 상에 배치된 것을 나타낸다.
도 2에 도시된 바와 같이, 일부 실시예들은 링 형상 슬라이딩 영역을 제공하며, 따라서 다수의 슬라이더 형상이 값들의 범위로부터 서로 중복 없이 동시에 최대 값을 선택하기 위해 슬라이딩 영역 내에 배치될 수 있다. 더구나, 위 아래에 설명되고 도시되는 이차원 슬라이더 컨트롤의 다양한 실시예들은 링 형상 슬라이딩 영역을 나타내지 않을 수도 있다. 그러나, 통상의 기술자는 이러한 이차원 슬라이더 컨트롤들이 상이한 실시예들에서 그러한 링 형상 슬라이딩 영역을 (또는 다른 슬라이딩 영역들도) 포함할 수 있다는 것을 인식할 것이다.
도 3은 배경 영역(335)을 포함하는 이차원 슬라이더 컨트롤(300)을 개념적으로 나타낸다. 도시된 바와 같이, 이차원 슬라이더 컨트롤(300)은 배경 영역(335), 슬라이딩 영역(120), 슬라이더 형상들(340-350) 및 중심(125)을 포함한다. 슬라이딩 영역(120), 슬라이더 형상들(340-350) 및 중심(125)은 도 1에서 전술한 것들과 유사하다.
배경 영역(335)은 슬라이더 형상들(340-350)이 배치될 수 있는 이차원 슬라이더 컨트롤(300) 내의 구역이다. 일부 실시예들에서, 슬라이더 형상이 배경 영역(335) 내에 배치될 때, 슬라이더 형상과 관련된 연산(들)은 기능하지 않으며, 슬라이더 형상은 디스에이블, 비활성, 오프 상태 등으로서 참조된다. 슬라이더 형상이 슬라이딩 영역(120) 내에 배치될 때, 슬라이더 형상과 관련된 연산(들)은 기능하며, 슬라이더 형상은 인에이블, 활성, 온 상태 등으로 참조된다. 따라서, "오프" 위치 또는 최소 값(예를 들어, 슬라이딩 영역(220)의 외측 원(230))에 대응하는 슬라이딩 영역(120) 내에 슬라이더 형상을 배치하는 대신에, 사용자는 혼란을 줄이기 위해 또는 사용자가 이 시간에 슬라이더 형상을 사용하기를 원하지 않을 때 슬라이더 형상을 배경 영역(335) 내에 배치할 수 있다. 게다가, 일부 실시예들의 배경 영역(335)은 아래의 예에서 설명되는 바와 같이 슬라이더 형상들과 관련된 연산들을 제어하기 위해 (슬라이더 형상들 대신에) 슬라이딩 영역이 이동 가능하게 배치될 수 있는 영역을 제공한다.
도 3은 또한 4개의 상이한 스테이지(305-320)에서 이차원 슬라이더 컨트롤(300)을 나타낸다. 스테이지들(305-315)은 배경 영역(335) 내에 이동 가능하게 배치된 슬라이더 형상들을 나타내며, 스테이지(320)는 슬라이딩 영역(120)을 이동 가능하게 배치하는 예를 나타낸다. 제1 스테이지(305)에서, 슬라이더 형상(340)은 화살표로 지시되는 바와 같이 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120) 내로부터 배경 영역(335)의 좌상 코너로 이동 가능하게 배치된다. 슬라이더 형상(340)의 이전 위치는 점원으로 지시된다. 이 스테이지에서, 슬라이더 형상(340)과 관련된 연산(들)은 디스에이블된다.
유사하게, 제2 및 제3 스테이지들(310, 315)은 각각의 화살표들로 지시되는 바와 같이 (예를 들어, 드래그 앤 드롭 동작들을 수행함으로써) 슬라이딩 영역(120) 내의 그들 각각의 위치로부터 배경 영역(335)의 좌상 코너로 이동 가능하게 배치되는 슬라이더 형상들(345, 350)을 나타낸다. 따라서, 슬라이더 형상들(345, 350)(및 슬라이더 형상(340))과 관련된 연산(들)은 이 스테이지에서 디스에이블된다. 제4 스테이지(320)는 화살표로 지시되는 바와 같이 (예를 들어, 중심(125)에 대해 드래그 앤 드롭 동작을 수행함으로써) 배경 영역(335)의 좌상 코너를 향해 이동 가능하게 배치되는 슬라이딩 영역(120)을 나타낸다. 슬라이딩 영역(120)의 이전 위치는 점원으로 표시된다. 이 스테이지에서, 슬라이더 형상들(340-350)은 슬라이딩 영역(120) 내에 배치되므로 활성화된다. 따라서, 슬라이딩 영역(120)을 이동 가능하게 배치함으로써, 다수의 슬라이더 형상이 단일 액션(즉, 슬라이딩 영역(120)의 이동 가능 배치)을 통해 제어 및 조정될 수 있다. 도시된 바와 같이, 이차원 슬라이더 컨트롤(300)의 경계를 지나 확장되는 슬라이딩 영역(120)의 부분들은 표시되지 않는다.
도 1 및 3은 고정된 수(즉, 3개)의 슬라이더 형상을 갖는 이차원 슬라이더 컨트롤을 나타낸다. 이차원 슬라이더 컨트롤의 다른 실시예들은 임의의 정적인 수의 슬라이더 형상을 포함할 수 있다. 일부 실시예들에서, 슬라이더 형상들의 수는 사용자가 제어하는 것이 허가되는 연산들의 수에 기초한다. 더구나, 일부 실시예들은 슬라이더 형상들이 이차원 슬라이더 컨트롤의 슬라이딩 영역 내에 이동 가능하게 배치되는 것만을 허가하는 반면, 도 3에 도시된 것과 같은 다른 실시예들은 이차원 슬라이더 컨트롤의 슬라이더 형상들이 이차원 슬라이더 컨트롤의 디스플레이 구역 내의 어느 곳에나(즉, 슬라이딩 영역의 내측은 물론 외측에도) 이동 가능하게 배치되는 것을 허가한다.
이차원 슬라이더 컨트롤에 대해, 상이한 실시예들은 슬라이더 형상들에 대한 상이한 시작 구성들을 제공한다. 예를 들어, 일부 실시예들은 슬라이더 형상들이 "제로 아웃(zero out)"되는 시작 구성을 제공한다. 즉, 슬라이더 형상들은 슬라이더 형상들과 관련된 연산들이 오프(예를 들어, 비활성화, 디스에이블, 0의 값의 선택, 최소 값의 선택 등)되도록 슬라이딩 영역 내에 배치된다. 도 1의 슬라이딩 영역(120)을 일례로서 이용하면, 일부 그러한 실시예들에서, 방사상 거리 기반 슬라이더 형상들은 슬라이더 형상들을 슬라이딩 영역(120)의 외측 에지를 따라 배치함으로써 "제로 아웃"될 수 있다. 각도 기반 슬라이더 형상들의 경우, 일부 실시예들에서 이들은 슬라이더 형상들을 중심(125)의 우측으로 그리고 축(145)을 따라 배치함으로써 "제로 아웃"된다. 이 분야의 통상의 기술자는, 슬라이더 형상들의 "제로 아웃"이 값들의 정의된 범위 내의 값들과 슬라이딩 영역 내의 위치들이 어떻게 관련되는지에 의존하며, 따라서 슬라이더 형상들을 "제로 아웃"하기 위하여 임의 수의 상이한 시작 구성들이 가능하다는 것을 인식할 것이다. 게다가, 일부 실시예들은 슬라이더 형상에 널(null) 값을 할당함으로써 슬라이더 형상을 "제로 아웃"한다. 더욱이, 다른 실시예들은 슬라이더 형상들에 대한 다른 시작 구성들을 제공한다. 예를 들어, 이차원 슬라이더 컨트롤의 일부 실시예들은 슬라이더 형상들이 디폴트 위치들/값들에 배치되는 시작 구성을 제공한다. 일부 실시예들은 슬라이딩 영역 밖에서 슬라이더 형상들을 시작한다.
이차원 슬라이더 컨트롤의 일부 실시예들은 동적인 수의 슬라이더 형상들을 허가한다. 즉, 이차원 슬라이더 컨트롤 내의 슬라이더 형상들의 수는 임의의 주어진 시간에 변할 수 있다. 특히, 그러한 실시예들은 슬라이더 형상들이 추가 및 삭제되는 것은 물론, 이차원 슬라이더 컨트롤의 슬라이딩 영역 내에 이동 가능하게 배치되는 것도 허가한다.
도 4는 일부 실시예들의 이차원 슬라이더 컨트롤(470)에 대한 GUI(400)의 일례를 개념적으로 나타낸다. 도시된 바와 같이, GUI(400)는 이차원 슬라이더 컨트롤(470) 및 슬라이더 형상 도구 박스(435)를 포함한다. 이차원 슬라이더 컨트롤(470)은 이차원 슬라이더 컨트롤(470)이 배경 영역(490)을 포함한다는 점 외에는 이차원 슬라이더 컨트롤(300)(즉, 슬라이딩 영역(120) 및 중심(125)을 포함함)과 유사하다. 배경 영역(490)은 배경 영역(490)이 직사각형 경계 대신에 정사각형 경계를 갖는다는 점 외에는 배경 영역(335)과 유사하다.
슬라이더 형상 도구 박스(435)는 슬라이더 형상 생성기들(440-465)을 포함한다. 일부 실시예들에서, 슬라이더 형상 생성기는 명령이 호출될 때 이차원 슬라이더 컨트롤(470)에 특정 타입의 슬라이더 형상을 추가하기 위한 사용자 선택 가능 사용자 인터페이스(UI) 아이템(예를 들어, 버튼, 아이콘, 썸네일)이다. 예를 들어, 일부 실시예들의 슬라이더 형상 생성기는 슬라이더 형상 생성기가 선택되고 (예를 들어, 클릭, 탭핑, 핫키 누름, 키스트로크, 키스트로크들의 조합 등에 의해) 명령이 호출될 때 이차원 슬라이더 컨트롤(470) 내에 슬라이더 형상을 추가한다.
도 4는 또한 6개의 상이한 스테이지(405-430)와 관련하여 슬라이더 형상 생성기들을 이용하여 이차원 슬라이더 컨트롤(470)에 슬라이더 형상들을 추가하는 한 가지 방법을 나타낸다. 도시된 바와 같이, 제1 스테이지(405)는 이차원 슬라이더 컨트롤(470) 내에 어떠한 슬라이더 형상도 없는 GUI(400)를 나타낸다.
제2 스테이지(410)는 이차원 슬라이더 컨트롤(470)에 슬라이더 형상(475)이 추가된 후의 GUI(400)를 나타낸다. 특히, 이 스테이지는 슬라이더 형상 생성기(445)로부터의 슬라이더 형상(475)의 생성에 의한 슬라이더 형상(475)의 추가를 나타낸다. 이 예에서, 슬라이더 형상(475)은 화살표로 지시되는 바와 같이 슬라이더 형상 생성기(445)를 선택하여 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 이차원 슬라이더 컨트롤(470)의 슬라이딩 영역(120) 내로 드래깅함으로써 생성된다.
제3 스테이지(415)에서, 다른 슬라이더 형상(480)이 이차원 슬라이더 컨트롤(470)에 추가된다. 이 스테이지는 슬라이더 형상 생성기(465)로부터의 슬라이더 형상(480)의 생성에 의해 이차원 슬라이더 컨트롤(470)에 추가되는 슬라이더 형상(480)을 나타낸다. 제2 스테이지(410)에서의 슬라이더 형상(475)과 유사하게, 슬라이더 형상(480)은 화살표로 지시되는 바와 같이 슬라이더 형상 생성기(465)를 선택하여 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 이차원 슬라이더 컨트롤(470)의 슬라이딩 영역(120) 내로 드래깅함으로써 생성된다.
GUI(400)의 제4 스테이지(420)는 이차원 슬라이더 컨트롤(470) 내에서의 슬라이더 형상(475)의 이동을 나타낸다. 도시된 바와 같이, 슬라이더 형상(475)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120) 내에서 아래로 그리고 좌측으로 이동 가능하게 배치된다. 이 스테이지는 슬라이더 형상(475)이 도 1을 참조하여 전술한 슬라이더 형상들(130, 140)의 이동과 유사하게 슬라이딩 영역(120) 내에 이동 가능하게 배치될 수 있음을 나타낸다.
제5 스테이지(425)에서, GUI(400)는 이차원 슬라이더 컨트롤(470) 내에서의 슬라이더 형상(480)의 이동을 나타낸다. 그러나, 이 스테이지에서, 슬라이더 형상(480)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120) 내로부터 배경 영역(490)으로 위로 그리고 우측으로 이동 가능하게 배치된다. 따라서, 제5 스테이지(425)는 슬라이더 형상(480)이 도 3을 참조하여 전술한 슬라이더 형상들(340-350)의 이동과 유사하게 배경 영역(490) 내에 이동 가능하게 배치될 수 있음을 나타낸다.
제6 스테이지(430)는 이차원 슬라이더 컨트롤(470)에 다른 슬라이더 형상(485)이 추가된 후의 GUI(400)를 나타낸다. 이 스테이지는 슬라이더 형상 생성기(450)로부터의 슬라이더 형상(485)의 생성에 의한 슬라이더 형상(485)의 추가를 나타낸다. 슬라이더 형상(485)은 슬라이더 형상 생성기(450)를 선택하여 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 드래깅함으로써 생성되는데, 다른 점은 슬라이더 형상 생성기가 이차원 슬라이더 컨트롤(470)의 배경 영역(490) 내로 드래깅된다는 것이다. 따라서, 도 4의 스테이지들은 슬라이더 형상들이 이차원 슬라이더 컨트롤(470)의 슬라이딩 영역(120)은 물론, 배경 영역(490)에도 추가될 수 있음을 나타낸다.
도 4에 도시된 바와 같이, 슬라이더 형상 생성기들(440-465)은 슬라이더 형상 도구 박스(435) 내에 포함되고, 수직 열로 배열된다. 상이한 실시예들은 슬라이더 형상 생성기들의 상이한 배열들 및 슬라이더 형상 도구 박스의 상이한 형상들을 제공한다. 예를 들어, 슬라이더 형상 생성기들은 일부 실시예들에서 이차원 슬라이더 컨트롤의 위 또는 아래에 위치하는 수평 슬라이더 형상 도구 박스 내에 수평 행으로 배열될 수 있다.
더구나, 도 4는 슬라이더 형상 도구 박스(435)를 이차원 슬라이더 컨트롤(470)로부터 분리된 것으로서 도시한다. 일부 실시예들에서, 슬라이더 형상 생성기들은 도 5에 개념적으로 도시된 바와 같이 (예를 들어, 배경 영역의 일측을 따라 위치하는) 이차원 슬라이더 컨트롤의 일부일 수 있다. 이 도면은 슬라이딩 영역(120), 중심(125), 배경 영역(520) 및 슬라이더 형상 생성기들(525-545)을 포함하는 일부 실시예들의 이차원 슬라이더 컨트롤(500)을 나타낸다. 배경 영역(520)은 배경 영역(520)이 상이한 직사각 형상이라는 점 외에는 배경 영역(335)과 유사하다. 도시된 바와 같이, 슬라이더 형상 생성기들(525-545)은 배경 영역(520) 내에 그리고 이차원 슬라이더 컨트롤(500)의 상부를 따라 배치된다.
도 5는 또한 3개의 상이한 스테이지(505-515)에서 이차원 슬라이더 컨트롤(500)을 나타낸다. 제1 스테이지(405)와 유사하게, 제1 스테이지(505)는 그 안에 어떠한 슬라이더 형상도 없는 이차원 슬라이더 컨트롤(500)을 나타낸다.
제2 스테이지(510)는 이차원 슬라이더 컨트롤(500)에 대한 슬라이더 형상(550)의 추가를 나타낸다. 도시된 바와 같이, 슬라이더 형상(550)은 슬라이더 형상들(475-485)의 생성과 유사한 방식으로 슬라이더 형상 생성기(530)로부터 생성됨으로써 이차원 슬라이더 컨트롤(500)에 추가된다. 이 스테이지에서, 슬라이더 형상 생성기(530)는 화살표로 지시되는 바와 같이 선택되고 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 배경 영역(520) 내로 드래깅된다.
제3 스테이지(515)에서, 제2 스테이지(510)에서의 슬라이더 형상(550)의 추가와 유사하게 다른 슬라이더 형상(555)이 이차원 슬라이더 컨트롤(500)에 추가된다. 이 스테이지에서, 슬라이더 형상(555)은 화살표로 지시되는 바와 같이 선택되고 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 배경 영역(520) 대신에 슬라이딩 영역(120) 내로 드래깅된다.
도 4 및 5는 일부 실시예들의 이차원 슬라이더 컨트롤에 슬라이더 형상을 추가하기 위한 슬라이더 형상 생성기들의 2개의 상이한 구성을 도시하지만, 상이한 실시예들은 이차원 슬라이더 컨트롤에 슬라이더 형상들을 추가하는 상이한 방법들을 제공한다. 예를 들어, 슬라이더 형상 생성기를 사용하여 슬라이더 형상들을 생성하는 것이 아니라, 일부 실시예들은 키스트로크, 키스트로크들의 조합, 핫키, 풀다운 또는 풀업 메뉴로부터 선택된 옵션 또는 임의의 다른 적절한 방법을 이용하여 이차원 슬라이더 컨트롤에 슬라이더 형상들을 추가한다. 일부 그러한 실시예들에서, 슬라이더 형상 생성기들은 선택되지 않거나 심지어는 표시되지도 않는다.
도 6은 다양한 이미지 처리 연산들을 수행하기 위한 일부 실시예들의 이차원 슬라이더 컨트롤(470)을 포함하는 GUI(600)를 개념적으로 나타낸다. 특히, 이 도면은 이미지 처리 연산의 3개의 상이한 스테이지(605-615)에서 GUI(600)를 나타낸다. 도시된 바와 같이, GUI(600)는 슬라이더 형상 도구 박스(625), 이차원 슬라이더 컨트롤(470) 및 관찰 영역(660)을 포함한다. 슬라이더 형상 도구 박스(625)는 슬라이더 형상 생성기들(630-655)이 이미지 처리 연산들을 수행하기 위한 슬라이더 형상들을 생성한다는 점 외에는 슬라이더 형상 도구 박스(435)와 유사하다. 관찰 영역(660)은 편집되고 있는 이미지(665) 및 이미지(665)에 적용되는 이미지 처리 연산들의 효과들을 표시하기 위한 것이다.
제1 스테이지(605)는 이차원 슬라이더 컨트롤(470)에 대한 슬라이더 형상(475)의 추가와 유사한 방식으로 이차원 슬라이더 컨트롤(470)에 슬라이더 형상(670)을 추가한 후의 GUI(600)를 나타낸다. 전술한 바와 같이, 슬라이더 형상 생성기들(630-655)은 이미지 처리 연산들을 수행하기 위한 슬라이더 형상들을 생성한다. 이 예에서, 슬라이더 형상 생성기(630)는 중심(125)으로부터의 방사상 거리에 기초하여 그의 "SH" 라벨에 의해 지시되는 바와 같은 샤프니스 연산(예를 들어, 언샤프 마스크)을 이미지(665)에 적용하기 위한 슬라이더 형상들을 생성한다. 특히, 이미지(665)에 적용되는 샤프니스 연산은 슬라이더 형상(670)이 슬라이딩 영역(120)의 중심(125)에 더 가까이 이동 가능하게 배치됨에 따라 증가된다. 도시된 바와 같이, 슬라이더 형상(670)은 슬라이딩 영역(120)의 상부 근처에 그리고 그 에지를 따라 배치되어, 이미지(665)에 소량의 샤프니스 연산을 적용한다. 관찰 영역(660)에 표시된 이미지(665)는 사람의 흐린 이미지이다.
제2 스테이지(610)는 슬라이더 형상(670)이 슬라이딩 영역(120) 내에 이동 가능하게 배치된 후의 GUI(600)를 나타낸다. 특히, 이 스테이지는 중심(125)을 향해 이동 가능하게 배치된 슬라이더 형상(670)을 나타낸다. 이 위치는 제1 스테이지(605)에서의 그의 이전 위치보다 슬라이딩 영역(120)의 중심(125)에 더 가깝고, 이는 이미지(665)에 적용되는 샤프니스 연산의 양을 증가시킨다. 관찰 영역(660)에 표시된 바와 같이, 사람의 이미지(665)는 이미지(665)에 적용된 샤프니스 연산의 증가로 인해 이전 스테이지에서보다 더 선명하다.
제3 스테이지(615)에서, 슬라이더 형상(670)은 다시 슬라이딩 영역(120) 내에 이동 가능하게 배치된다. 특히, 슬라이더 형상(670)은 슬라이딩 영역(120)의 중심(125)을 향해 더 아래에 이동 가능하게 배치된다. 슬라이딩 영역(120) 내의 슬라이더 형상(670)의 이 위치에서, 이미지(665)에 적용되는 샤프니스 연산의 양은 더 증가된다. 따라서, 관찰 영역(660)에 표시된 이미지(665)는 이전 스테이지들에서보다 더 선명한 사람의 이미지이다.
도 6은 샤프니스 연산의 다양한 스테이지들을 나타내지만, 슬라이더 형상 생성기(630)(및 다른 슬라이더 형상 생성기들)는 상이한 실시예들에서 이미지(665)에 대해 다른 이미지 처리 연산들(예를 들어, 채도, 콘트라스트, 명도, 컬러 균형, 잡음 제거 등)을 수행하는 슬라이더 형상들을 생성하도록 정의될 수 있다. 더욱이, 슬라이더 형상(670)은 방사상 거리 위치 변수에 기초하여 이미지 처리 연산을 적용한다. 다른 실시예들에서, 이미지 처리 연산은 다른 위치 변수들(예를 들어, 각도, x축 거리, y축 거리)에 기초할 수 있다.
도 7은 일부 실시예들의 이차원 슬라이더 컨트롤을 이용하여 애플리케이션의 연산을 제어하기 위한 프로세스(700)를 개념적으로 나타낸다. 일부 실시예들에서, 프로세스(700)는 슬라이더 형상 또는 슬라이딩 영역이 이차원 슬라이더 컨트롤 내에 이동 가능하게 배치되는 동안에 수행된다. 예를 들어, 일부 그러한 실시예들에서, 프로세스(700)는 슬라이더 형상 또는 슬라이딩 영역이 이차원 슬라이더 컨트롤 내에 이동 가능하게 배치되고 있는 동안에 항상 수행된다(즉, 실시간으로 수행된다). 다른 그러한 실시예들에서, 프로세스(700)는 슬라이더 형상 또는 슬라이딩 영역이 이차원 슬라이더 컨트롤 내에 이동 가능하게 배치되고 있는 동안에 정해진 거리(예를 들어, 10 픽셀, 5 밀리미터 등)만큼 이동할 때마다 수행된다. 또 다른 실시예들에서, 프로세스(700)는 슬라이더 형상 또는 슬라이딩 영역의 이동 가능한 배치가 완료될 때(예를 들어, 드래그 앤 드롭 동작이 완료될 때) 수행된다. 더욱이, 일부 실시예들의 프로세스(700)는 이차원 슬라이더 컨트롤을 제공하는 애플리케이션에 의해 수행된다.
설명의 목적을 위해, 프로세스(700)는 슬라이더 형상 또는 슬라이딩 영역의 이동 가능한 배치가 완료될 때 프로세스(700)를 수행하는 실시예들에 기초하여 설명될 것이다. 프로세스(700)는 (705에서) 슬라이딩 영역 내의 슬라이더 형상의 위치를 식별함으로써 시작한다. 일례로서 도 3을 참조하면, 슬라이더 형상(340)이 제1 스테이지(305)에 도시된 그의 위치로 이동할 때, 프로세스(700)는 슬라이더 형상(340)의 도시된 위치를 식별한다. 이어서, 프로세스(700)는 (710에서) 슬라이딩 영역의 위치를 식별한다. 일부 실시예들에서 그리고 이 예에서, 슬라이딩 영역(120)의 중심(125)은 슬라이딩 영역(120)의 위치를 나타낸다. 다른 실시예들에서는, 슬라이딩 영역(120) 내의 상이한 포인트가 슬라이딩 영역(120)의 위치를 나타낸다. 도 3의 예를 계속하면, 프로세스(700)는 제1 스테이지(305)에 도시된 중심(125)의 위치를 슬라이딩 영역(120)의 위치로서 식별한다. 더욱이, 슬라이딩 영역(120)이 예를 들어 도 3의 제4 스테이지(320)에서 이동 가능하게 배치될 때, 프로세스(700)는 슬라이딩 영역(120)의 위치를 제4 스테이지(315)에 도시된 바와 같은 중심(125)의 위치로서 식별한다.
위치들을 식별한 후, 이어서 프로세스(700)는 (715에서) 슬라이딩 영역에 대한 위치 변수(예를 들어, 방사상 거리, 각도, x축 거리, y축 거리)를 결정한다. 도 3의 슬라이더 형상(340)을 다시 참조하고, 방사상 거리를 예시적인 위치 변수로서 이용하면, 715에서 프로세스(700)는 슬라이더 형상(340)의 위치와 슬라이딩 영역(120)의 중심(125) 간의 거리를 결정한다. 이어서, 프로세스(700)는 (720에서) 결정된 위치 변수에 대해 정의된 값들의 범위 내의 하나의 값을 식별한다. 슬라이더 형상(340)의 예를 계속하면, 프로세스(700)는 방사상 거리 위치 변수에 대한 값들의 범위로부터 값을 식별한다. 예를 들어, 방사상 거리 위치 변수에 대한 값들의 범위가 0 내지 255의 연속적인 정수들의 범위로서 정의되는 경우, 프로세스(700)는 슬라이더 형상(340)의 결정된 방사상 거리에 기초하여 그 범위 내의 정수 값을 식별한다.
결정된 위치 변수에 대한 값을 식별한 후에, 프로세스(700)는 (725에서) 처리할 임의의 위치 변수가 남았는지를 결정한다. 프로세스(700)가 처리할 위치 변수가 남은 것으로 결정하는 경우, 프로세스(700)는 동작 715로 복귀하여 임의의 남은 위치 변수를 처리한다. 그렇지 않은 경우, 프로세스(700)는 동작 730으로 진행한다. 하나의 위치 변수에 기초하여 값들의 범위로부터 값을 선택하도록 정의된 슬라이더 형상들의 경우, 프로세스(700)는 하나의 위치 변수가 처리된 후에 종료한다. 그러나, 다수의 위치 변수에 기초하여 값들의 다수의 범위로부터 다수의 값을 선택하도록 정의된 슬라이더 형상들의 경우, 프로세스(700)는 위치 변수들 각각에 대해 연산들(715, 720)을 수행한다.
모든 위치 변수들이 처리된 후, 프로세스(700)는 (730에서) 식별된 값들의 세트에 기초하여 적어도 하나의 애플리케이션의 파라미터들의 세트를 조정한다. 전술한 바와 같이, 사용자는 일부 실시예들의 이차원 슬라이더 컨트롤 내에 슬라이더 형상을 이동 가능하게 배치하여, 애플리케이션의 연산을 제어할 수 있다(예를 들어, 도 6에 도시된 바와 같이 이미지 처리 애플리케이션에서 샤프니스 연산을 제어할 수 있다). 애플리케이션의 연산을 제어하는 한 가지 방법은 730에서 프로세스(700)에 의해 수행되는 바와 같은 연산에 대한 파라미터들의 세트를 조정하는 것이다. 일부 실시예들에서는 상이한 슬라이더 형상이 파라미터들의 세트 내의 파라미터들 각각과 관련되는 반면, 다른 실시예들에서는 슬라이더 형상이 파라미터들의 세트 내의 하나 이상의 파라미터와 관련될 수 있다. 게다가, 일부 실시예들의 애플리케이션은 컴퓨팅 장치 상에서 실행되는 독립형 애플리케이션인 반면, 다른 실시예들의 애플리케이션은 다른 애플리케이션의 일부인 컴포넌트이다. 애플리케이션은 일부 실시예들에서 컴퓨팅 장치의 운영 체제의 일부인 애플리케이션일 수 있다.
전술한 프로세스(700)는 특정 순서로 설명되었지만, 상이한 실시예들은 프로세스(700)를 상이한 순서로 수행할 수 있다. 예를 들어, 프로세스(700)의 일부 실시예들은 (725에서) 처리할 임의의 위치 변수가 남았는지를 결정하기 전에 (730에서) 애플리케이션의 파라미터들의 세트를 조정한다. 슬라이딩 영역 전에 슬라이더 형상의 위치를 식별하는 대신에, 일부 실시예들은 슬라이더 형상의 위치를 식별하기 전에 슬라이딩 영역의 위치를 식별한다.
전술한 그리고 후술하는 이차원 슬라이더 컨트롤의 많은 실시예는, 슬라이더 형상들을 슬라이딩 영역의 외측 에지를 따라 또는 그에 가까이 배치하는 것이 값들의 범위로부터 최소 값을 선택하도록, 편집되는 이미지에 소량의 연산을 적용하거나 연산을 적용하지 않도록, 기타 등등이 되도록, 그리고 슬라이더 형상들을 슬라이딩 영역의 중심에 또는 그에 가까이 배치하는 것이 값들의 범위로부터 최대 값을 선택하도록, 편집되는 이미지에 다량의 연산을 적용하도록, 기타 등등이 되도록 슬라이더 형상들을 정의한다. 그러나, 상이한 실시예들에서, 슬라이더 형상들은 상이하게 정의될 수 있다. 예를 들어, 일부 실시예들의 슬라이더 형상들은 그들이 슬라이딩 영역의 중심에 또는 그에 가까이 배치될 때 값들의 범위로부터 최소 값을 선택하도록, 편집되는 이미지에 소량의 연산을 적용하거나 연산을 적용하지 않도록, 기타 등등이 되도록, 그리고 그들이 슬라이딩 영역의 외측 에지에 또는 그에 가까이 배치될 때 값들의 범위로부터 최대 값을 선택하도록, 편집되는 이미지에 다량의 연산을 적용하도록, 기타 등등이 되도록 정의될 수 있다.
여러 개의 더 상세한 실시예가 아래에 설명된다. 섹션 I은 일부 실시예들의 미디어 편집 애플리케이션의 예시적인 컬러 수정 연산들의 설명을 제공한다. 이어서, 섹션 II는 일부 실시예들의 여러 상이한 타입의 슬라이더 형상들 및 연산들을 설명한다. 이어서, 섹션 III은 일부 실시예들의 슬라이더 형상 그룹핑 동작들을 설명한다. 이어서, 섹션 IV는 일부 실시예들의 슬라이딩 영역 동작들을 설명한다. 이어서, 섹션 V는 일부 실시예들의 이차원 슬라이더 컨트롤의 예시적인 태블릿 구현을 설명한다. 이어서, 섹션 VI은 일부 실시예들의 이차원 슬라이더 컨트롤을 사용하는 애플리케이션의 소프트웨어 아키텍처를 설명한다. 마지막으로, 섹션 VII은 본 발명의 일부 실시예들을 구현하는 컴퓨터 시스템을 설명한다.
I. 예시적인 컬러 수정 연산들
도 6을 참조하여 전술한 바와 같이, 이차원 슬라이더 컨트롤의 일부 실시예들은 이미지 처리 연산들을 수행하기 위한 것이다. 일부 실시예들에서는, 유사한 이차원 슬라이더 컨트롤을 사용하여 미디어 편집 애플리케이션에서 컬러 수정 연산들을 수행할 수 있다. 그러한 미디어 편집 애플리케이션의 예들은 Apple Final Cut Pro®, Apple Aperture®, Apple iPhoto®, Adobe Photoshop®, Adobe Lightroom® 등을 포함한다.
아래의 섹션은 일부 그러한 실시예들의 이차원 슬라이더 컨트롤을 이용하여 제어되는 다양한 컬러 수정 연산들을 설명할 것이다. 구체적으로, 단일 위치 변수에 기초하는 여러 컬러 수정 연산들이 설명되고, 이어서 2개의 위치 변수에 기초하는 여러 컬러 수정 연산들이 설명될 것이다. 통상의 기술자는 이들이 컬러 수정 연산들의 몇 가지 예일 뿐이며, 이러한 이차원 슬라이더 컨트롤을 이용하여 다른 컬러 수정 연산들이 수행될 수 있다는 것을 인식할 것이다.
A. 단일 변수 연산들
도 8은 이차원 슬라이더 컨트롤(470)을 포함하는 일부 실시예들의 미디어 편집 애플리케이션의 GUI(800)를 이용하는 컬러 수정 연산을 개념적으로 나타낸다. 특히, 이 도면은 이차원 슬라이더 컨트롤(470)을 이용하여 수행되는 명도 연산을 나타내는 3개의 상이한 스테이지(805-815)에서 GUI(800)를 나타낸다. GUI(800)는 GUI(800)가 슬라이더 형상 박스(625) 대신에 슬라이더 형상 도구 박스(825)를 포함한다는 점 외에는 GUI(600)와 유사하다. 도시된 바와 같이, 슬라이더 형상 도구 박스(825)는 컬러 수정 연산들을 수행하기 위한 슬라이더 형상들을 생성하기 위한 것인 슬라이더 형상 생성기들(830-855)을 포함한다. 관찰 영역(660)은 편집되는 이미지(820)를 표시하고 이미지(820)에 적용되는 컬러 수정들을 표시하기 위한 것이다. 일부 실시예들에서 이미지(820)는 정지 이미지인 반면, 다른 실시예들에서 이미지(820)는 비디오(즉, 이미지들 또는 프레임들의 시퀀스)의 일부이다.
전술한 바와 같이, 슬라이더 형상 생성기들(830-855)은 컬러 수정 연산들을 수행하기 위한 슬라이더 형상들을 생성하기 위한 것이다. 구체적으로, 슬라이더 형상 생성기(830)는 그의 "SH" 라벨로 표시된 바와 같이 샤프니스 연산을 적용하기 위한 슬라이더 형상들을 생성하고, 슬라이더 형상 생성기(835)는 그의 "S" 라벨로 표시된 바와 같이 채도 연산을 적용하기 위한 슬라이더 형상들을 생성하고, 슬라이더 형상 생성기(840)는 그의 "C" 라벨로 표시된 바와 같이 콘트라스트 연산을 적용하기 위한 슬라이더 형상들을 생성하고, 슬라이더 형상 생성기(845)는 그의 "H" 라벨로 표시된 바와 같이 명도 연산을 적용하기 위한 슬라이더 형상들을 생성하고, 슬라이더 형상 생성기(850)는 그의 "CC" 라벨로 표시된 바와 같이 컬러 캐스트(color cast) 연산을 적용하기 위한 슬라이더 형상들을 생성하고, 슬라이더 형상 생성기(855)는 그의 "ST" 라벨로 표시된 바와 같이 스킨 톤(skin tone) 채도 연산을 적용하기 위한 슬라이더 형상들을 생성한다. 슬라이더 형상 도구 박스(825)는 특정 컬러 수정 연산을 적용하는 슬라이더 형상들을 각각 생성하는 슬라이더 형상 생성기들을 나타내지만, 다른 실시예들은 상이한 컬러 수정 연산들을 적용하는 슬라이더 형상들을 생성하기 위한 슬라이더 형상 생성기들을 정의할 수 있다.
이제, 도 8에 도시된 제1 내지 제3 스테이지(805-815) 동안의 GUI(800)의 상태를 참조하여 예시적인 명도 연산들을 설명한다. 일부 실시예들에서, 명도 연산은 이미지 내의 픽셀들의 휘도 값들을 특정 양만큼 증가시켜 더 밝은 이미지를 생성한다. 일부 그러한 실시예들은 휘도 값들과 특정 값(예를 들어, 1.1, 2.0)을 곱함으로써 휘도 값들을 증가시킨다.
이 예에서, 슬라이더 형상들(860)은 방사상 거리 위치 변수에 기초하여 그의 명도 연산을 제어한다. 슬라이딩 영역(120)의 중심(125)을 향해 슬라이더 형상을 이동 가능하게 배치하는 것은 이미지(820)에 적용되는 슬라이더 형상(860)과 관련된 연산의 양을 증가시키며, 그 반대도 마찬가지이다.
제1 스테이지(805)는 슬라이더 형상(475)의 추가와 유사한 방식으로 슬라이더 형상 생성기(845)로부터 이차원 슬라이더 컨트롤(470)에 추가된 슬라이더 형상(860)을 나타낸다. 이 스테이지에서, 슬라이더 형상(860)은 슬라이딩 영역(120)의 좌하 에지를 따라 배치되며, 따라서 이미지(820)에는 명도 연산이 거의 또는 전혀 적용되지 않는다. 도시된 바와 같이, 관찰 영역(660)에 표시된 이미지(820)는 어두운(즉, 불충분하게 노출된) 사람 이미지이다.
제2 스테이지(810)에서, 이미지(820)에 적용되는 명도 연산이 조정된다. 이 스테이지는 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)을 향해 우측으로, 약간 위로 이동 가능하게 배치된 슬라이더 형상(860)을 나타낸다. 슬라이더 형상(860)의 이동은 이미지(820)에 적용되는 명도 연산의 양의 증가를 유발하며, 이는 사람을 제1 스테이지(805)에서보다 조금 더 밝게 표시한다.
제3 스테이지(815)는 이미지(820)에 적용되는 명도 연산에 대한 조정을 나타낸다. 도시된 바와 같이, 슬라이더 형상(860)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 화살표로 표시된 바와 같이 다시 슬라이딩 영역(120)의 중심(125)을 향해 우측으로, 약간 위로 이동 가능하게 배치된다. 이 스테이지에서의 슬라이더 형상(860)의 위치는 많은 양의 명도 연산을 이미지(820)에 적용하는데, 그 이유는 슬라이더 형상(860)이 슬라이딩 영역(120)의 중심(125)에 매우 가깝기 때문이다. 따라서, 관찰 영역(660)에 표시된 사람의 이미지(820)는 제2 스테이지(810)에서보다 밝으며, 더 이상 어둡지 않다.
도 9는 이차원 슬라이더 컨트롤(470)을 포함하는 일부 실시예들의 미디어 편집 애플리케이션의 GUI(900)를 이용하는 다른 컬러 수정 연산을 개념적으로 나타낸다. 구체적으로, 도 9는 이차원 슬라이더 컨트롤(470)을 이용하는 채도 연산의 3개의 상이한 스테이지(905-915)에서 GUI(900)를 나타낸다. GUI(900)는 관찰 영역(660)이 사람의 상이한 이미지(920)를 표시한다는 점 외에는 도 8에 도시된 GUI(800)와 유사하다. 게다가, 관찰 영역(660)의 좌하 코너로부터 우상 코너로 연장하는 대각선들이 이미지(920)에 적용되는 채도 연산의 효과들을 나타내기 위해 이미지(920) 위에 표시된다. 일부 실시예들에서, 대각선들은 실제로는 표시되지 않는다. 이미지(920) 위에 표시되는 선들의 수는 이미지(920)에 적용되는 채도 연산의 양을 나타내며, 많은 수의 선은 많은 양의 채도 연산을 나타내고, 그 반대도 마찬가지이다.
일부 실시예들에서, 채도 연산은 이미지 내에 존재하는 컬러의 양을 조정한다(그러나 이를 행함에 있어서 이미지의 색조 또는 휘도는 변경하지 않는다). 따라서, 일부 그러한 실시예들에서, 이미지의 채도의 증가는 이미지 내에 존재하는 임의의 크로마(chroma)의 순도를 증가시키며, 이들을 1차 및/또는 2차 컬러들(예를 들어, 적색, 오렌지색, 황색, 녹색, 청록색, 청색, 자홍색)에 집중시킨다. 반면, 이미지의 채도의 감소는 이미지 내에 존재하는 임의의 크로마의 순도를 저하시킨다(즉, 이미지를 흑백으로 바꾼다).
GUI(900)의 제1 스테이지(905)는 슬라이더 형상(475)의 추가와 유사한 방식으로 슬라이더 형상(960)이 이차원 슬라이더 컨트롤(470)에 추가된다는 점 외에는 제1 스테이지(805)와 유사하다. 도시된 바와 같이, 제1 스테이지(905)는 슬라이딩 영역(120)의 중심(125)의 우측 가까이에 배치된 슬라이더 형상(960)을 나타낸다. 따라서, 비교적 많은 양의 대각선들이 이미지(920) 위에 표시된다.
제2 스테이지(910)는 이미지(920)에 적용되는 채도 연산에 대한 조정을 나타낸다. 이 스테이지에서, 슬라이더 형상(960)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)으로부터 멀어지게 좌측으로, 위로 이동 가능하게 배치된다. 이미지(920)에 적용되는 채도 연산의 양의 결과적인 감소는 제1 스테이지(905)에서보다 적은 수의 대각선을 이미지(920) 위에 표시함으로써 도시된다.
제3 스테이지(915)에서, 이미지(920)에 적용되는 채도 연산이 다시 조정된다. 이 스테이지에서, 슬라이더 형상(960)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)으로부터 멀어지게 더 좌측으로, 위로 이동 가능하게 배치된다. 도시된 바와 같이, 이미지(920) 위에 표시된 대각선들의 수는 이미지(920)에 적용되는 채도 연산의 감소로 인해 이전 스테이지들에서 도시된 것보다 적다.
도 10은 이차원 슬라이더 컨트롤(470)을 포함하는 일부 실시예들의 미디어 편집 애플리케이션의 GUI(1000)를 이용하는 다른 컬러 수정 연산을 개념적으로 나타낸다. 이 도면은 이차원 슬라이더 컨트롤(470)을 이용하는 콘트라스트 연산의 3개의 상이한 스테이지(1005-1015)에서 GUI(1000)를 나타낸다. GUI(1000)는 관찰 영역(660)이 사람의 상이한 이미지(1020)를 표시한다는 점 외에는 도 8에 도시된 GUI(800)와 유사하다.
일부 실시예들의 콘트라스트 연산은 이미지 내의 픽셀들의 휘도 값들을 이미지의 흑백 한도들을 향해 또는 그로부터 멀어지게 조정한다. 일부 그러한 실시예들에서, 콘트라스트 연산은 이미지의 콘트라스트가 증가될 때 어두운 회색 픽셀들을 더 어둡게 그리고 밝은 회색 픽셀들을 더 밝게 조정하며, 이미지의 콘트라스트가 감소될 때 어두운 픽셀들 및 밝은 픽셀들을 중간 회색을 향해 조정한다.
GUI(1000)의 제1 스테이지(1005)는 슬라이더 형상(475)의 추가와 유사한 방식으로 슬라이더 형상(1060)이 이차원 슬라이더 컨트롤(470)에 추가된다는 점 외에는 제1 스테이지(805)와 유사하다. 이 스테이지에서, 슬라이더 형상(1060)은 슬라이딩 영역(120)의 우측 에지 상에 배치되며, 슬라이딩 영역(120)의 중심(125)으로부터 비교적 멀다. 이것은 적은 양의 콘트라스트 연산이 이미지(1020)에 적용된다는 것을 의미하며, 이는 배경이 약간 더 어두운 회색으로 변하고 사람이 약간 더 밝은 회색으로 변하는 것에 의해 도시된다.
제2 스테이지(1010)에서, 이미지(1020)에 적용되는 콘트라스트 연산에 대한 조정이 수행된다. 도시된 바와 같이, 슬라이더 형상(1060)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)을 향해 좌측으로 이동 가능하게 배치된다. 콘트라스트 연산의 증가는 관찰 영역(660)에 표시된 이미지(1020)에서 회색 배경의 어두움의 증가 및 사람의 밝음의 증가의 표시에 의해 도시된다.
제3 스테이지(1015)는 이미지(1020)에 적용되는 콘트라스트 연산에 대한 다른 조정을 나타낸다. 이 스테이지에서, 슬라이더 형상(870)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)을 향해 좌측으로 이동 가능하게 배치된다. 따라서, 관찰 영역(660)에 표시되는 이미지(1020)는 이미지(1020)에 적용되는 콘트라스트 연산의 증가를 나타내기 위해 배경을 매우 어둡게 그리고 사람을 매우 밝게 표시한다.
도 11은 이차원 슬라이더 컨트롤(470)을 포함하는 일부 실시예들의 미디어 편집 애플리케이션의 GUI(1100)를 이용하는 다른 컬러 수정 연산을 개념적으로 나타낸다. 구체적으로, 이 도면은 이차원 슬라이더 컨트롤(470)을 이용하는 스킨 톤 채도 연산의 3개의 상이한 스테이지(1105-1115)에서 GUI(1100)를 나타낸다. GUI(1100)는 관찰 영역(660)이 사람의 상이한 이미지(1120)를 표시한다는 점 외에는 도 8에 도시된 GUI(800)와 유사하다. 도 9와 유사하게, 관찰 영역(660)의 좌하 코너로부터 우상 코너로 연장하는 대각선들이 스킨 톤 채도 연산의 효과들을 나타내기 위하여 이미지(1120) 위에 그러나 스킨으로서 식별되는 이미지(1120)의 구역들 내에만 표시된다. 이미지(1120) 위에 표시되는 대각선들의 수는 이미지(1120)에 적용되는 스킨 톤 채도 연산의 양을 나타낸다. 구체적으로, 많은 수의 대각선은 많은 양의 스킨 톤 채도 연산을 나타내고, 그 반대도 마찬가지이다.
일부 실시예들에서, 스킨 톤 채도 연산은 "Adjusting Color Attribute of an Image in a Non-Uniform Way"라는 제목으로 2002년 11월 8일자로 출원된 미국 특허 출원 제12/029438호에 상세히 더 설명된 바와 같이 스킨 톤들로서 식별되는 이미지의 구역들에만 채도 연산을 적용하기 위한 컬러 수정 연산이며, 상기 출원은 본 명세서에 참고로 포함된다.
GUI(1100)의 제1 스테이지(1105)는 슬라이더 형상(475)의 추가와 유사한 방식으로 이차원 슬라이더 컨트롤(470)에 슬라이더 형상(1160)이 추가된다는 점 외에는 제1 스테이지(805)와 유사하다. 이 스테이지에서, 슬라이더 형상(1160)은 슬라이딩 영역(120)의 중심(125)에 매우 가까이 배치된다. 따라서, 이미지(1120)에 적용되는 스킨 톤 채도 연산을 나타내기 위하여 이미지(1120) 내의 사람의 얼굴 및 목(즉, 스킨) 위에 비교적 많은 수의 대각선이 표시된다.
제2 스테이지(1110)에서, 이미지(1120)에 적용되는 스킨 톤 채도 연산에 대한 조정이 행해진다. 슬라이더 형상(1160)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)으로부터 떨어져 위로 이동 가능하게 배치된다. 관찰 영역(660)에 표시되는 이미지(1120) 내의 사람의 얼굴과 목 위에 더 적은 대각선을 표시함으로써 스킨 톤 채도 연산의 감소가 지시된다.
제3 스테이지(1115)는 이미지(1120)에 적용되는 스킨 톤 채도 연산에 대한 다른 조정을 나타낸다. 이 스테이지에서, 슬라이더 형상(1160)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)을 향해 아래로 이동 가능하게 배치된다. 이 스테이지에서, 슬라이딩 영역(120) 내의 슬라이더 형상(1160)의 위치는 이미지(1120)에 적용되는 스킨 톤 채도 연산의 양을 증가시키지만, 이 양은 제1 스테이지(1105)에서 이미지(1120)에 적용되는 양보다 적다. 따라서, 이미지(1120) 내의 사람의 얼굴과 목 위에 표시되는 대각선들의 수는 제2 스테이지(1110)에서 이미지(1120) 위에 표시되는 대각선들의 수보다는 많지만, 제1 스테이지(1105)에서 표시되는 것보다는 적다.
본 발명의 일부 실시예들에서, 이차원 슬라이더 컨트롤은 편집되는 이미지에 컬러 캐스트 연산들을 적용하기 위한 정적 컬러 슬라이더 형상들을 제공한다. 일부 실시예들에서, 정적 컬러 슬라이더 형상은 정적 컬러 슬라이더 형상과 관련된 특정 컬러를 갖는다. 이러한 정적 컬러 슬라이더 형상들은 편집되는 이미지에 적용할 정적 컬러 슬라이더 형상과 관련된 컬러의 양을 제어하기 위하여 슬라이딩 영역의 중심을 향해 그리고 그로부터 떨어져 이동 가능하게 배치될 수 있다(즉, 컬러 캐스트 연산은 방사상 거리 위치 변수에 기초한다).
도 12는 일부 실시예들의 이차원 슬라이더 컨트롤을 포함하는 미디어 편집 애플리케이션의 GUI를 이용하는 다른 컬러 수정 연산을 개념적으로 나타낸다. 이 도면은 일부 실시예들의 정적 컬러 캐스트 슬라이더(1230)를 이용하는 컬러 캐스트 연산의 3개의 상이한 스테이지(1205-1215)에서 GUI(1200)를 나타낸다. GUI(1200)는 GUI(1200)가 슬라이더 형상 도구 박스(825) 대신에 슬라이더 형상 도구 박스(1240)를 포함하고 관찰 영역(660)이 상이한 이미지(1220)를 표시한다는 점 외에는 GUI(800)와 유사하다.
슬라이더 형상 도구 박스(1240)는 슬라이더 형상 생성기들(1245-1260)을 포함한다. 슬라이더 형상 생성기들(1245-1260) 각각은 특정 컬러와 관련된 컬러 캐스트 연산을 적용하기 위한 슬라이더 형상들을 생성한다. 예를 들어, 슬라이더 형상 생성기(1245)는 (도 4와 관련하여 전술한 것과 유사한 방식으로) 편집되는 이미지에 청색 캐스트 연산을 적용하는 슬라이더 형상들을 생성하기 위한 것이다. 유사하게, 슬라이더 형상 생성기(1250)는 녹색 캐스트 연산을 적용하기 위한 슬라이더 형상들을 생성하고, 슬라이더 형상 생성기(1255)는 적색 캐스트 연산을 적용하기 위한 슬라이더 형상들을 생성하며, 슬라이더 형상 생성기(1260)는 자주색 캐스트 연산을 적용하기 위한 슬라이더 형상들을 생성한다. 다른 실시예들에서는, 상이한 그리고/또는 추가적인 슬라이더 형상 생성기들이 슬라이더 형상 도구 박스(1240) 내에 포함될 수 있다.
도 12에는 이미지(1220)에 적용되는 컬러 캐스트 연산의 효과들을 나타내기 위해 관찰 영역(660)의 좌하 코너로부터 우상 코너로 연장하는 대각선들은 물론, 컬러를 지시하는 라벨이 이미지(1220) 위에 표시된다. 일부 실시예들에서, 대각선들은 실제로는 표시되지 않는다. 이미지(1220) 위에 표시되는 선들의 수는 이미지(1220)에 적용되는 컬러 캐스트 연산의 양을 나타내는데, 많은 수의 선은 많은 양의 채도 연산을 나타내고, 그 반대도 마찬가지이다.
제1 스테이지(1205)는 슬라이더 형상(475)의 추가와 유사한 방식으로 슬라이더 형상 생성기(1250)로부터 슬라이딩 영역(120)으로의 슬라이더 형상(1230)의 추가를 나타낸다. 슬라이더 형상(1230)은 슬라이더 형상 생성기(1250)로부터 생성되므로, 슬라이더 형상(1230)은 슬라이더 형상(1230) 상의 라벨 "G"에 의해 지시되는 바와 같이 이미지(1220)에 녹색 캐스트 연산을 적용하기 위한 것이다. 도시된 바와 같이, 슬라이더 형상(1230)은 슬라이딩 영역(120)의 외측 에지 근처에 배치된다. 이것은 이미지(1220) 위에 표시된 적은 수의 대각선에 의해 지시되는 바와 같이 이미지(1220)에 적은 양의 녹색 캐스트 연산이 적용된다는 것을 의미한다.
제2 스테이지(1210)에서, 이미지(1220)에 적용되는 녹색 캐스트 연산에 대한 조정이 행해진다. 이 스테이지는 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이더 형상(1230)이 아래로, 우측으로 그리고 슬라이딩 영역(120)의 중심(125)을 향해 이동 가능하게 배치된다는 것을 나타낸다. 이러한 슬라이더 형상(1230)의 이동은 이미지(1220)에 적용되는 녹색 캐스트 연산의 양의 증가를 유발하며, 이는 관찰 영역(660)에 표시되는 이미지(1220) 위의 대각선들의 수의 증가에 의해 도시된다.
제3 스테이지(1215)는 이미지(1220)에 적용되는 녹색 캐스트 연산에 대한 다른 조정을 나타낸다. 이 스테이지에서, 슬라이더 형상(1230)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 좌측으로, 약간 위로 그리고 슬라이딩 영역(120)의 중심(125)으로부터 떨어져 이동 가능하게 배치된다. 이미지(1220)에 적용되는 녹색 캐스트 연산의 양의 감소는 관찰 영역(660)에 표시되는 이미지(1220) 위의 대각선들의 수의 감소에 의해 도시된다.
도 13은 본 발명의 일부 실시예들에 따른 도 12의 GUI(1200)를 이용하는 컬러 변경 연산을 개념적으로 나타낸다. 컬러 변경 연산의 일부 실시예들은 정적 컬러 슬라이더 형상과 관련된 컬러를 변경하기 위해 정적 컬러 슬라이더 형상과 관련된 컬러를 임시로 언록킹(unlocking)한다. 도 13은 정적 컬러 슬라이더 형상(1230)에 대한 그러한 실시예들의 컬러 변경 연산의 3개의 상이한 스테이지(1305-1315)에서 GUI(1200)를 나타낸다.
제1 스테이지(1305)는 도 12에 도시된 최종 스테이지(1215)로부터 계속된다. 도시된 바와 같이, 슬라이더 형상(1230)은 GUI(1200)가 팝업 메뉴(1320)도 표시한다는 점 외에는 최종 스테이지(1215)에서와 동일한 위치에 있다. 상이한 실시예들은 팝업 메뉴(1320)를 상이하게 호출한다. 예컨대, 일부 실시예들은 키스트로크, 키스트로크들의 조합, 핫키 또는 다른 적절한 방법을 이용한다. 일부 실시예들에서, 팝업 메뉴(1320)는 커서 제어 동작(예컨대, 우측 클릭 커서 동작 또는 컨트롤 클릭 커서 동작)에 의해 호출된다. 도시된 바와 같이, 팝업 메뉴(1320)는 슬라이더 형상(1230)과 관련된 컬러를 언록킹하기 위한 사용자 선택 가능 "언록" 옵션을 포함하며, "언록" 옵션은 슬라이더 형상(1230)과 관련된 현재 컬러를 언록킹하기 위해 팝업 메뉴(1320)로부터 (예를 들어, 클릭하거나 탭핑함으로써) 선택된다.
제2 스테이지(1310)에서, 컬러 선택 그리드가 슬라이딩 영역(120) 위에 중첩된다. 일부 실시예들에서, 컬러 선택 그리드는 제1 스테이지(1305)에서 표시된 팝업 메뉴(1320)의 "언록" 옵션이 선택된 직후에 표시된다. 도시된 바와 같이, 컬러 선택 그리드는 슬라이딩 영역(120)을 6개의 웨지(wedge)(1345-1370)로 시각적으로 분할한다. 각각의 웨지는 특정 컬러와 관련된다. 웨지(1345)는 녹색과 관련되고, 웨지(1350)는 청색과 관련되고, 웨지(1355)는 자주색과 관련되고, 웨지(1360)는 적색과 관련되고, 웨지(1365)는 오렌지색과 관련되고, 웨지(1370)는 황색과 관련된다. 게다가, 웨지들은 웨지와 관련된 컬러를 지시하기 위해 슬라이딩 영역(120)의 중심(125) 근처에 (컬러의 이름의 첫 글자를 이용하여) 라벨링된다. 일부 실시예들에서, 라벨들은 표시되지 않는다. 이 스테이지에서, 슬라이더 형상(1230)은 녹색과 관련되는데, 그 이유는 슬라이더 형상(1230)이 슬라이딩 영역(120)의 녹색 웨지(1345) 내에 배치되기 때문이다.
일부 그러한 실시예들은 언록 명령(예를 들어, 팝업 메뉴(1320)의 "언록" 옵션)이 선택될 때 정적 컬러 슬라이더 형상과 관련된 컬러에 대응하는 컬러 선택 그리드 상의 컬러의 위치가 정적 컬러 슬라이더 형상의 위치와 정렬되도록 컬러 선택 그리드를 표시한다. 제2 스테이지(1310)에서, 슬라이더 형상(1230)은 녹색 캐스트 연산과 관련되므로, 컬러 선택 그리드는 슬라이더 형상(1230)이 언록킹될 때 컬러 선택 그리드 상의 녹색의 위치가 슬라이더 형상(1230)의 위치와 정렬되도록 표시된다. 예를 들어, 이 도면에 도시된 컬러 선택 그리드의 컬러 웨지들의 동일 상대 순서를 컬러 웨지들의 상대 순서의 예로 이용하면, 슬라이더 형상(1230)이 슬라이딩 영역(120)의 바닥 근처에 배치되는 경우, 녹색 웨지는 바닥 웨지(즉, 이 스테이지에서 웨지(1365))로서 배치되고, 이어서 청색 웨지(1350)가 시계 방향으로, 자주색 웨지(1355)가 시계 방향으로, 그리고 기타 등등으로 배치될 것이다.
컬러 선택 그리드가 6개의 상이한 컬러를 특정 순서로 갖는 것으로 도시되지만, 통상의 기술자는 컬러 선택 그리드의 상이한 실시예들이 임의 수의 상이한 방식으로 배열될 수 있는 임의 수의 상이한 컬러를 포함할 수 있다는 것을 인식할 것이다. 게다가, 일부 실시예들은 (선택할 몇몇 컬러만을 갖는 대신에) 선택할 컬러들의 훨씬 더 넓은 범위를 제공하기 위해 컬러들이 하나의 컬러로부터 다음 컬러로 점진적으로 변하도록 컬러 선택 그리드를 구현할 수 있다.
도 13을 다시 참조하면, 제3 스테이지(1315)는 언록킹된 슬라이더 형상(1230)과 관련된 컬러의 변화를 나타낸다. 도시된 바와 같이, 슬라이더 형상(1230)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120) 내에서 녹색 웨지(1345)로부터 자주색 웨지(1355)로 이동 가능하게 배치된다. 이 스테이지는 또한 제1 스테이지(1305)에서의 팝업 메뉴(1320)와 유사한 방식으로 호출되는 팝업 메뉴(1325)를 표시한다. 팝업 메뉴(1325)는 사용자 선택 가능 "록" 옵션을 포함하며, 이 옵션은 이 옵션이 선택될 때 슬라이더 형상(1230)과 관련된 컬러를 슬라이더 형상(1230)으로 록킹한다. 도시된 바와 같이, "록" 옵션이 선택되며, 슬라이더 형상(1230)은 자주색 웨지(1355) 내에 위치하므로, 슬라이더 형상(1230)의 새로운 "P" 라벨로 지시되는 바와 같이, 자주색이 슬라이더 형상(1230)과 관련되고 그것으로 록킹된다. 슬라이더 형상(1230)은 이제 이미지(1220)에 자주색 캐스트 연산을 적용하므로, 이미지(1220) 위에 표시되는 라벨은 그에 따라 바뀐다.
GUI(1200)의 제4 스테이지(1320)는 슬라이딩 영역(120) 내에서의 슬라이더 형상(1230)의 이동을 나타낸다. 이 스테이지에서, 슬라이더 형상(1230)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 동일한 방사상 거리를 유지하면서 슬라이딩 영역(120) 내의 다른 위치로 이동 가능하게 배치된다. 따라서, 이미지(1220)에 적용되는 자주색 캐스트 연산의 양은 제3 스테이지(1315)에서 표시된 바와 같은 관찰 영역(660) 내의 동일한 이미지(1220)의 표시에 의해 지시되는 바와 같이 변함없이 유지된다.
도 13을 참조하여 전술한 방법들에 더하여, 다른 실시예들은 다양한 상이한 방법들을 이용하여 컬러 변경 연산을 개시할 수 있다. 예를 들어, 컬러 변경 연산을 개시 및 종료하기 위해 키스트로크, 키스트로크들의 조합, 핫키 또는 다른 적절한 방법이 토글링될 수 있다. 더욱이, 컬러 변경 연산을 개시 및 종료하기 위해 키보드 입력을 토글링하는 대신에, 일부 실시예들은 컬러 변경 연산을 개시하기 위해 컬러 변경 연산 전체에서 유지되어야 하는 키보드 입력을 그리고 컬러 변경 연산을 종료하기 위해 키보드 입력의 해제를 이용할 수 있다.
도 14는 이차원 슬라이더 컨트롤(470)을 포함하는 일부 실시예들의 미디어 편집 애플리케이션의 GUI(1400)를 이용하는 다수의 컬러 수정 연산을 개념적으로 나타낸다. 구체적으로, 도 14는 이차원 슬라이더 컨트롤(470)을 이용하는 다수의 컬러 수정 연산의 3개의 상이한 스테이지(1405-1415)에서 GUI(1400)를 나타낸다. GUI(1400)는 관찰 영역(660)이 사람의 상이한 이미지(1420)를 표시한다는 점 외에는 도 8에 도시된 GUI(800)와 유사하다. 스킨 톤 채도 연산의 효과를 표시하기 위해 도 11에서 사용된 대각선들과 같은 방식으로 이미지(1420) 위에 대각선들이 표시된다.
제1 스테이지(1405)에서, GUI(1400)는 이차원 슬라이더 컨트롤(470)에 대한 3개의 슬라이더 형상(1425-1435)의 추가를 나타낸다. 슬라이더 형상들(1425-1435)은 슬라이더 형상(475)의 추가와 유사하게 이차원 슬라이더 컨트롤(470)에 각각 개별적으로 추가된다. 도시된 바와 같이, 슬라이더 형상(1425)은 도 6을 참조하여 설명된 바와 같은 샤프니스 연산을 수행하기 위한 것이고, 슬라이더 형상(1430)은 도 8을 참조하여 설명된 바와 같은 명도 연산을 수행하기 위한 것이며, 슬라이더 형상(1435)은 도 11을 참조하여 설명된 바와 같은 스킨 톤 채도 연산을 수행하기 위한 것이다. 이 예에서, 이미지(1420)는 사람의 흐리고 어두운 이미지이다. 슬라이더 형상들(1425-1435)은 슬라이딩 영역(120)의 외측 에지 근처에 배치되므로, 이미지(1420)에는 적은 양의 각각의 연산(즉, 샤프닝(sharpening), 명도 및 스킨 톤 채도)이 적용된다. 이것은 사람의 얼굴과 목 위에 적은 수의 대각선을 갖는 사람의 어둡고 흐린 이미지의 표시에 의해 도시된다.
제2 스테이지(1410)는 이미지(1420)에 적용되는 슬라이더 형상들(1425-1435)의 연산들에 대한 조정들을 나타낸다. 도시된 바와 같이, 슬라이더 형상들(1425-1435)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)을 향해 각각 이동 가능하게 배치되며, 따라서 이미지(1420)에 적용되는 연산들의 양이 증가한다. 이러한 조정들은, 제1 스테이지(1405)에서 표시된 것보다 더 선명하고, 더 밝고, 사람의 얼굴과 목 위에 더 많은 대각선을 갖는 이미지(1420)의 표시에 의해 도시된다.
제3 스테이지(1415)에서, 슬라이더 형상들(1425-1435)의 연산들이 다시 조정된다. 슬라이더 형상들(1425-1435)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)을 더 향해 각각 이동 가능하게 배치된다. 이미지(1420)에 적용되는 연산들의 양의 증가는 이전 스테이지들에서의 이미지보다 이미지(1420)에서 더 선명하고, 더 밝고, 사람의 얼굴과 목 위에 더 많은 대각선을 갖는 이미지를 표시함으로써 도시된다.
스테이지들(1405-1415)은 슬라이더 형상들(1425-1435)의 추가 또는 이동 가능 배치를 일괄하여 도시하지만, 일부 실시예들에서는 이러한 액션들이 개별적으로 수행된다. 그러나, 다른 실시예들에서, 슬라이더 형상들(1425-1435)은 도 29를 참조하여 아래에 더 설명되는 바와 같이 동시에 추가되거나 이동 가능하게 배치될 수 있다.
도 15는 일부 실시예들의 이차원 슬라이더 컨트롤 내의 슬라이더 형상을 이용하여 편집되는 이미지에 컬러 수정 연산을 적용하기 위한 프로세스(1500)를 나타낸다. 일부 실시예들에서, 프로세스(1500)는 도 8에 도시된 것과 같은 이차원 슬라이더 컨트롤을 포함하는 미디어 편집 애플리케이션에 의해 수행된다. 일부 실시예들에서, 프로세스(1500)는 슬라이더 형상 또는 슬라이딩 영역이 이차원 슬라이더 컨트롤 내에 이동 가능하게 배치되는 동안에 수행된다. 예를 들어, 일부 그러한 실시예들에서, 프로세스(1500)는 슬라이더 형상 또는 슬라이딩 영역이 이차원 슬라이더 컨트롤 내에 이동 가능하게 배치되는 동안에 항상(즉, 실시간으로) 수행된다. 다른 그러한 실시예들에서, 프로세스(1500)는 슬라이더 형상 또는 슬라이딩 영역이 이동 가능하게 배치되는 동안에 슬라이더 형상 또는 슬라이딩 영역이 정의된 거리(예를 들어, 10 픽셀, 5 밀리미터 등)만큼 이동할 때마다 수행된다. 또 다른 실시예들에서, 프로세스(1500)는 슬라이더 형상 또는 슬라이딩 영역의 이동 가능 배치가 완료될 때(예를 들어, 슬라이더 형상에 대해 수행되는 드래그 앤 드롭 동작이 완료될 때) 수행된다.
프로세스(1500)는 도 7을 참조하여 전술한 바와 같은 동작 710과 유사한 동작 1505를 수행함으로써 시작된다. 이어서, 프로세스(1500)는 도 7에서 또한 설명된 동작 705와 유사한 동작 1510을 수행한다. 즉, 프로세스(1500)는 이차원 슬라이더 컨트롤 내의 슬라이딩 영역 및 슬라이더 형상의 위치들을 식별한다. 1515에서, 프로세서(1500)는 슬라이더 형상과 관련된 컬러 수정 연산을 식별한다. 컬러 수정 연산들의 예들은 콘트라스트 연산, 채도 연산, 노출 연산, 컬러 캐스트 연산 등을 포함한다.
이어서, 프로세스(1500)는 (1520에서) 슬라이딩 영역(예를 들어, 슬라이딩 영역의 중심)에 대한 슬라이더 형상의 위치 변수(예컨대, 방사상 거리, 각도, x축 거리, y축 거리)를 결정한다. 동작 1520 후에, 프로세스(1500)는 (1525에서) 슬라이더 형상에 대해 처리할 임의의 위치 변수가 남아 있는지를 결정한다. 프로세스(1500)가 처리할 위치 변수가 남은 것으로 결정할 때, 프로세스(1500)는 동작 1515로 복귀하여 슬라이더 형상의 임의의 남은 위치 변수들의 처리를 계속한다. 그렇지 않은 경우, 프로세스(1500)는 (1530에서) 처리할 임의의 슬라이더 형상이 남아 있는지를 결정한다. 예를 들어, 슬라이딩 영역이 이차원 슬라이더 컨트롤 내에 이동 가능하게 배치될 때, 이차원 슬라이더 컨트롤 내의 모든 슬라이더 형상들의 위치 변수들이 변경될 수 있다. 그러한 경우, 이차원 슬라이더 컨트롤 내의 모든 슬라이더 형상들을 처리하여, 대응하는 연산들 중 임의의 연산이 변경되었는지를 결정한다. 프로세스(1500)는 처리할 슬라이더 형상이 남은 것으로 결정할 때 동작 1505로 복귀하여 임의의 남은 슬라이더 형상들을 처리한다. 처리할 슬라이더 형상이 남지 않은 경우, 프로세스(1500)는 동작 1535로 진행한다.
마지막으로, 프로세스(1500)는 (1535에서) 슬라이더 형상의 결정된 위치 변수에 기초하여 편집되는 이미지에 식별된 컬러 수정 연산을 적용한다. 슬라이더 형상의 컬러 수정 연산이 다수의 위치 변수에 기초하는 일부 예들에서, 프로세스(1500)는 (1535에서) 슬라이더 형상의 다수의 결정된 위치 변수들에 기초하여 식별된 컬러 수정 연산을 적용한다. 슬라이더 형상이 그와 관련된 다수의 컬러 수정 연산을 갖는 경우, 프로세스(1500)는 (1535에서) 각자가 단일 위치 변수 또는 다수의 위치 변수에 기초할 수 있는 다수의 컬러 수정 연산을 적용한다. 다수의 슬라이더 형상이 처리되는(예를 들어, 슬라이딩 영역이 슬라이더 형상 대신에 이동 가능하게 배치되는) 예들에서, 프로세스(1500)는 (1535에서) 다시 각자가 단일 위치 변수 또는 다수의 위치 변수에 기초할 수 있는 각각의 슬라이더 형상의 식별된 컬러 수정 연산(들)을 적용한다.
B. 다중 변수 연산들
일부 실시예들은 다수의 위치 변수에 기초하여 이미지에 컬러 캐스트 연산을 적용하기 위한 슬라이더 형상들을 제공한다. 예컨대, 일부 실시예들은 2개의 위치 변수에 기초하여 이미지에 컬러 캐스트 연산을 적용하기 위한 동적 컬러 슬라이더 형상을 제공한다. 일부 그러한 실시예들에서, 동적 컬러 슬라이더 형상은 편집되는 이미지에 적용되는 컬러 캐스트 연산의 컬러를 변경하는 컬러 슬라이더 형상과 관련된 컬러를 변경하기 위해 이차원 슬라이더 컨트롤의 슬라이딩 영역 주위에 이동 가능하게 배치될 수 있다. 게다가, 동적 컬러 슬라이더 형상은 이미지에 적용할 컬러 슬라이더 형상과 관련된 컬러의 양을 제어하기 위해 슬라이딩 영역의 중심을 향해 그리고 그로부터 떨어져 이동 가능하게 배치될 수 있다. 따라서, 이러한 동적 컬러 슬라이더 형상들은 다수의 위치 변수에 기초하여 컬러 캐스트 연산을 제어할 수 있다.
1. 동적 컬러 슬라이더 형상들
도 16은 일부 실시예들의 이차원 슬라이더 컨트롤(470)을 포함하는 미디어 편집 애플리케이션의 GUI(1600)를 나타낸다. 구체적으로, 이 도면은 일부 실시예들의 동적 컬러 슬라이더 형상을 이용하는 컬러 캐스트 연산의 4개의 상이한 스테이지(1605-1620)에서 GUI(1600)를 나타낸다. GUI(1600)는 관찰 영역(660)이 상이한 이미지(1625)를 표시한다는 점 외에는 GUI(800)와 유사하다. 이미지(1625)는 도 12에서 설명된 것과 동일한 방식으로 컬러 캐스트 연산의 효과들을 나타내기 위해 대각선들 및 라벨을 표시한다.
도시된 바와 같이, 스테이지들(1605-1620)은 슬라이딩 영역(120)의 구역들과 관련된 컬러들을 지시하기 위해 도 13에 도시된 것과 동일한 컬러 선택 그리드를 표시한다. 동적 컬러 슬라이더 형상이 선택될 때, 일부 실시예들은 슬라이딩 영역(120) 상에 컬러 선택 그리드를 표시한다. 일부 실시예들은 다른 슬라이더 형상이 선택될 때까지(동적 컬러 슬라이더 형상이 슬라이딩 영역(120) 내에 이동 가능하게 배치되지 않는 경우에도) 컬러 선택 그리드를 표시한다.
제1 스테이지(1605)는 슬라이더 형상(475)의 추가와 유사한 방식으로 슬라이더 형상 생성기(850)로부터 이차원 슬라이더 컨트롤(470)로의 슬라이더 형상(1630)의 추가를 나타낸다. 도시된 바와 같이, 슬라이더 형상(1630)은 슬라이딩 영역(120)의 녹색 웨지(1345) 내에 배치되며, 이는 녹색과 슬라이더 형상(1630)을 관련시킨다. 이미지(1625) 위에 표시된 대각선들 및 라벨은 이미지(1625)에 대한 슬라이더 형상(1630)의 녹색 캐스트 연산의 효과들을 나타낸다.
제2 스테이지(1610)는 이미지(1625)에 적용되는 컬러 캐스트 연산에 대한 조정을 나타낸다. 조정은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이더 형상(1630)을 위로, 좌측으로 그리고 슬라이딩 영역(120)의 중심(125)으로부터 멀어지게 이동 가능하게 배치함으로써 행해진다. 이 스테이지에서, 슬라이더 형상(1630)은 현재 슬라이딩 영역(120)의 중심(125)으로부터 더 멀리 있다는 점 외에는 여전히 녹색 웨지 구역 내에 있다. 따라서, 이미지(1625)는 여전히 녹색으로 라벨링되지만, 그 위에는 더 적은 대각선들이 표시된다.
제3 스테이지(1615)에서, 이미지(1625)에 적용되는 컬러 캐스트 연산에 대한 다른 조정이 행해진다. 도시된 바와 같이, 슬라이더 형상(1630)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)으로부터 동일 거리를 유지하면서 녹색 웨지로부터 자주색 웨지로 이동 가능하게 배치된다. 슬라이더 형상(1630)의 이동의 결과로서, 이제 (녹색 대신에) 자주색이 슬라이더 형상(1630)과 관련된다. 그러나, 슬라이더 형상(1630)의 위치로부터 슬라이딩 영역(120)의 중심(125)까지의 방사상 거리는 그의 이전 위치에서의 방사상 거리와 동일하므로, 이미지(1625)에 적용되는 컬러 캐스트 연산의 양은 변경되지 않는다. 따라서, 이미지(1625)는 컬러의 라벨이 자주색을 나타내도록 변경되는 점 외에는 이미지(1625) 위에 동일한 수의 대각선을 표시한다.
일부 실시예들에서, 슬라이더 형상(1630)과 관련된 컬러는 슬라이더 형상이 슬라이딩 영역(120)을 통해 이동함에 따라 변한다. 예를 들어, 슬라이더 형상(1630)이 이 제3 스테이지(1615)에서 화살표로 지시되는 경로를 따라 이동함에 따라, 슬라이더 형상(1630)이 녹색 웨지로부터 청색 웨지로 이동할 때, 슬라이더 형상(1630)과 관련된 컬러는 녹색으로부터 청색으로 변한다. 마찬가지로, 슬라이더 형상(1630)이 청색 웨지로부터 자주색 웨지로 이동함에 따라 슬라이더 형상(1630)과 관련된 컬러는 청색으로부터 자주색으로 변한다. 다른 실시예들에서는, 이동의 종료시까지(예를 들어, 드래그 앤 드롭 동작이 완료될 때까지) 컬러와 슬라이더 형상(1630)은 관련되지 않는다.
제4 스테이지(1620)는 이미지(1625)에 적용되는 컬러 캐스트 연산에 대한 또 다른 조정을 나타낸다. 이 스테이지에서, 슬라이더 형상(1630)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 아래로, 좌측으로 그리고 슬라이딩 영역(120)의 중심(125)을 향해 이동 가능하게 배치된다. 도시된 바와 같이, 슬라이더 형상(1630)은 여전히 자주색 웨지 내에 위치하지만, 이제는 슬라이딩 영역(120)의 중심(125)에 더 가깝다. 이것은 컬러 캐스트 연산을 증가시키며, 이는 관찰 영역(660)에 표시된 이미지(1625) 위의 추가적인 대각선들에 의해 도시된다.
도 17은 일부 실시예들의 이차원 슬라이더 컨트롤 내의 동적 컬러 슬라이더 형상을 이용하여 편집되는 이미지에 컬러 수정 연산을 적용하기 위한 프로세스(1700)를 개념적으로 나타낸다. 일부 실시예들에서, 프로세스(1700)는 슬라이더 형상(1630)과 같은 동적 컬러 슬라이더 형상 또는 슬라이딩 영역이 이차원 슬라이더 컨트롤 내에 이동 가능하게 배치되는 동안에 수행된다. 예를 들어, 일부 그러한 실시예들에서, 프로세스(1700)는 동적 컬러 슬라이더 형상 또는 슬라이딩 영역이 이차원 슬라이더 컨트롤 내에 이동 가능하게 배치되는 동안에 항상(즉, 실시간으로) 수행된다. 다른 그러한 실시예들에서, 프로세스(1700)는 동적 컬러 슬라이더 형상 또는 슬라이딩 영역이 이차원 슬라이더 컨트롤 내에 이동 가능하게 배치되는 동안에 정해진 거리(예를 들어, 10 픽셀, 5 밀리미터 등)만큼 이동할 때마다 수행된다. 또 다른 실시예들에서, 프로세스(1700)는 동적 컬러 슬라이더 형상 또는 슬라이딩 영역의 이동 가능 배치가 완료될 때(예를 들어, 동적 컬러 슬라이더 형상에 대한 드래그 앤 드롭 동작이 완료될 때) 수행된다. 더구나, 일부 실시예들의 프로세스(1700)는 동적 컬러 슬라이더 형상들에 대한 이차원 슬라이더 컨트롤을 포함하는 미디어 편집 애플리케이션에 의해 수행된다.
프로세스(1700)는 (1705에서) 슬라이더 형상이 컬러 캐스트 연산을 수행하기 위한 동적 컬러 슬라이더 형상인지를 결정함으로써 시작된다. 프로세스(1700)가 슬라이더 형상이 동적 컬러 슬라이더 형상이 아닌 것으로 결정할 때, 프로세스(1700)는 종료된다. 그렇지 않은 경우, 프로세스(1700)는 동작 1710 및 1715를 수행한다. 프로세스(1700)의 2개의 동작 1710 및 1715는 도 7에서 전술한 동작 710 및 705와 각각 동일하다. 구체적으로, 프로세스(1700)는 슬라이딩 영역(예를 들어, 슬라이딩 영역(120)의 중심)의 위치 및 이차원 슬라이더 컨트롤의 슬라이딩 영역 내의 슬라이더 형상(예를 들어, 슬라이더 형상(1630))의 위치를 식별한다.
이어서, 프로세스(1700)는 (1720에서) 슬라이더 형상 및 슬라이딩 영역의 위치들에 기초하여 각도를 결정한다. 일부 실시예들에서, 프로세스(1700)는 도 1을 참조하여 전술한 것과 동일한 방식으로 각도를 결정한다. 각도를 결정한 후에, 프로세스(1700)는 (1725에서) 결정된 각도에 기초하여 슬라이더 형상과 관련된 컬러를 결정한다. 도 13에 표시된 컬러 선택 그리드를 일례로서 이용하면, 프로세스(1700)는 슬라이딩 영역 내의 슬라이더 형상의 위치의 결정된 각도에 기초하여 슬라이더 형상과 관련된 컬러 선택 그리드 내의 컬러를 결정한다. 이어서, 프로세스(1700)는 (1730에서) 슬라이더 형상의 위치로부터 슬라이딩 영역의 위치까지의 방사상 거리를 결정한다. 결정된 방사상 거리에 기초하여, 프로세스(1700)는 (1735에서) 슬라이더 형상과 관련된 결정된 컬러의 양을 편집되는 이미지에 적용한다. 동작 1735 후에 프로세스(1700)가 종료된다.
더구나, 통상의 기술자는 프로세스(1700)가 이차원 슬라이더 컨트롤 내의 동적 컬러 슬라이더 형상을 이용하여 컬러 캐스트 연산을 수행하기 위해 일부 실시예들에 의해 수행되는 하나의 가능한 프로세스의 일례라는 것을 인식할 것이다. 프로세스(1700)는 컴퓨터 명령들이 그러한 컬러 캐스트 연산을 어떻게 수행할 수 있는지에 대한 유일한 예는 아니다. 예를 들어, 동작 1720-1730은 도 17에 도시된 순서로 반드시 수행될 필요는 없다. 게다가, 프로세스(1700)의 일부 실시예들은 슬라이딩 영역 및 슬라이더 형상의 위치들이 식별된 후에 동작 1705를 수행한다.
도 18은 본 발명의 일부 실시예들에 따른 도 16의 GUI(1600)를 이용하는 컬러 록킹 연산을 개념적으로 나타낸다. 일부 예들에서, 사용자는 동적 컬러 슬라이더 형상과 관련된 컬러를 록킹하기를 원할 수 있으며, 따라서 록킹된 컬러 슬라이더 형상을 슬라이딩 영역 내에 이동 가능하게 배치하는 것은 컬러 슬라이더 형상과 관련된 컬러를 변경하지 않지만, 사용자는 여전히 이미지에 적용할 컬러 캐스트의 양을 제어할 수 있다. 도 18은 컬러 록 연산의 4개의 상이한 스테이지(1805-1820)에서 GUI(1600)를 나타낸다.
제1 스테이지(1805)는 슬라이더 형상(1630)의 록킹을 나타낸다. 도시된 바와 같이, 도 13에서와 동일한 컬러 선택 그리드가 슬라이딩 영역(120) 내에 표시된다. 또한, 팝업 메뉴(1840)가 이차원 슬라이더 컨트롤(470) 내에 표시된다. 상이한 실시예들은 도 13을 참조하여 전술한 바와 같이 팝업 메뉴(1320)를 호출하는 데 사용되는 상이한 방법들과 유사하게 팝업 메뉴(1840)를 호출한다. 팝업 메뉴(1840)는 사용자 선택 가능 옵션 "삭제", "록" 및 "특성"을 포함한다. "삭제" 옵션은 이차원 슬라이더 컨트롤(470)로부터 슬라이더 형상(1630)을 제거하기 위한 것이다. "특성" 옵션은 슬라이더 형상(1630)의 특성들의 리스트를 표시하기 위한 것이다. "록" 옵션은 슬라이더 형상(1630)과 관련된 현재 컬러를 슬라이더 형상(1630)으로 록킹하기 위한 것이다. 이 스테이지는 (예를 들어, 클릭하거나 탭핑함으로써) "록" 옵션의 선택을 나타내며, 슬라이더 형상(1630)은 이 옵션이 선택될 때 청색 웨지 내에 배치되므로, 청색이 슬라이더 형상(1630)과 관련된다.
제2 스테이지(1810)에서, 슬라이더 형상(1630)은 이차원 슬라이더 컨트롤(470)의 슬라이딩 영역(120) 내에서 이동된다. 도시된 바와 같이, 동적 컬러 캐스트 슬라이더 형상이 컬러 록킹된 것을 지시하기 위해 슬라이더 형상(1630)의 쉐이딩(shading)이 반전된다(즉, 백색 배경 상의 흑색 문자 대신에 흑색 배경 상에 백색 문자가 표시된다). 상이한 실시예들은 슬라이더 형상의 외관을 다르게 변경함으로써 동적 컬러 캐스트 슬라이더 형상이 컬러 록킹되는 것을 나타낸다. 예를 들어, 일부 실시예들은 슬라이더 형상의 라벨링, 형상, 크기 등을 변경한다. 설명되는 바와 같이, 이 스테이지는 또한 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)에 대해 동일 거리를 유지하면서 슬라이딩 영역(120)의 여기저기에 이동 가능하게 배치되는 슬라이더 형상(1630)을 나타낸다. 슬라이더 형상(1630)은 컬러 선택 그리드의 적색 웨지 내에 배치된다. 그러나, 슬라이더 형상(1630)의 컬러가 록킹되었으므로(즉, 청색), 슬라이더 형상(1630)은 적색 웨지(또는 임의의 다른 컬러 웨지)의 컬러를 그와 연관시키지 않는다. 게다가, 슬라이더 형상(1630)의 위치로부터 중심(125)까지의 방사상 거리가 동일하게 유지되므로, 이미지(1625)에 적용되는 록킹된 컬러의 양은 변하지 않는다. 따라서, 이 스테이지에서 관찰 영역(660)에 표시되는 이미지(1625)는 제1 스테이지(1805)에서 표시된 이미지(1625)와 동일하다.
제3 스테이지(1815)는 이미지(1625)에 적용되는 컬러 캐스트 연산에 대한 조정을 나타낸다. 도시된 바와 같이, 슬라이더 형상(1630)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)을 향해 좌측으로 이동 가능하게 배치된다. 이러한 슬라이더 형상(1630)의 이동은 이미지(1625)에 적용되는 슬라이더 형상(1630)과 관련된 컬러의 양을 증가시키며, 이는 관찰 영역(660)에 표시되는 이미지(1625) 위의 추가적인 대각선들에 의해 도시된다.
제4 스테이지(1820)는 이미지(1625)에 적용되는 컬러 캐스트 연산에 대한 다른 조정을 나타낸다. 이 스테이지에서, 슬라이더 형상(1630)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이더 형상(120)의 중심(125)을 더 향해 좌측으로 이동 가능하게 배치된다. 이 스테이지에서의 슬라이더 형상(1630)의 이동은 이미지(1625)에 적용되는 컬러 캐스트 연산의 양을 더 증가시키며, 이는 관찰 영역(660)에 표시되는 이미지(1625) 위의 추가적인 대각선들에 의해 도시된다.
스테이지들(1815, 1820)은 슬라이더 형상(1630)의 컬러가 록킹되는 경우에도 슬라이더 형상(1630)을 슬라이딩 영역(120)의 중심(125)으로부터 멀어지게 또는 그를 향해 이동 가능하게 배치하는 것(즉, 방사상 거리를 변경하는 것)이 이미지(1625)에 적용되는 록킹된 컬러의 양을 여전히 변경한다는 것을 나타낸다. 게다가, 일부 실시예들은 현재 록킹된 동적 컬러 슬라이더 형상이 언록킹되는 것을 허가한다. 일부 실시예들은 팝업 메뉴(1840)와 유사한 팝업 메뉴(도시되지 않음)를 제공하는데, 다른 점은 이 팝업 메뉴가 "록" 옵션 대신에 사용자 선택 가능 "언록" 옵션을 포함한다는 점이다. 록킹된 동적 컬러 슬라이더 형상도 키스트로크, 키스트로크들의 조합, 핫키 또는 임의의 적절한 방법을 이용하여 언록킹될 수 있다.
도 19는 일부 실시예들의 이차원 슬라이더 컨트롤(470)을 포함하는 미디어 편집 애플리케이션의 다른 GUI(1900)를 개념적으로 나타낸다. 구체적으로, 이 도면은 2개의 위치 변수에 기초하는 컬러 캐스트 연산의 3개의 상이한 스테이지(1905-1915)에서 GUI(1900)를 나타낸다. GUI(1900)는 GUI(1900)가 슬라이더 형상 도구 박스(825) 대신에 슬라이더 형상 도구 박스(1925)를 포함하고 관찰 영역(660)이 상이한 이미지(1920)를 표시한다는 점 외에는 GUI(800)와 유사하다. 도 19에서는 이미지(1920)에 대한 컬러 캐스트 연산의 효과들을 나타내기 위해 이미지(1920) 위에 수평선들 및 라벨이 표시된다. 이미지(1920) 위에 표시되는 수평선들의 수는 이미지(1920)에 적용되는 컬러 캐스트 연산의 양을 나타내는데, 많은 수의 수평선들은 많은 양의 컬러 캐스트 연산을 나타내고, 적은 수의 수평선들은 적은 양의 컬러 캐스트 연산을 나타낸다.
도시된 바와 같이, 슬라이더 형상 도구 박스(1925)는 슬라이더 형상 생성기들(1930-1940)을 포함한다. 일부 실시예들에서, 슬라이더 형상 생성기들(1930-1940)은 특정 컬러를 갖는 편집되는 이미지의 부분들에 컬러 캐스트 연산을 적용하는 슬라이더 형상들을 생성하기 위한 것이다. 예를 들어, 적색 캐스트 슬라이더 형상을 생성하는 슬라이더 형상 생성기는 그 안에 적색을 갖는 편집되는 이미지의 부분들에 컬러 캐스트 연산을 적용한다. 이 예에서, 슬라이더 형상 생성기(1930)는 라벨 "R"로 지시되는 바와 같이 그 안에 적색을 갖는 편집되는 이미지의 부분들에 컬러 캐스트 연산을 적용하는 슬라이더 형상들을 생성하기 위한 것이고, 슬라이더 형상 생성기(1935)는 라벨 "G"로 지시되는 바와 같이 그 안에 녹색을 갖는 편집되는 이미지의 부분들에 컬러 캐스트 연산을 적용하는 슬라이더 형상들을 생성하기 위한 것이고, 슬라이더 형상 생성기(1940)는 라벨 "B"로 지시되는 바와 같이 그 안에 청색을 갖는 편집되는 이미지의 부분들에 컬러 캐스트 연산을 적용하는 슬라이더 형상들을 생성하기 위한 것이다.
더구나, 이러한 슬라이더 형상들의 일부 실시예들은 그 안에 특정 컬러를 갖는 현재 이미지의 부분들에 컬러 캐스트 연산을 적용하는 반면, 다른 실시예들은 그 안에 특정 컬러를 갖는 오리지널 이미지의 부분들에 컬러 캐스트 연산을 적용한다. 도 19는 그러한 슬라이더 형상 생성기들의 3개의 예를 도시하지만, 다른 실시예들은 상이한 컬러(예를 들어, 오렌지색, 황색, 자주색 등)인 편집되는 이미지의 부분들에 컬러 캐스트 연산을 적용하는 슬라이더 형상들을 생성하기 위한 상이한 그리고/또는 추가적인 슬라이더 형상 생성기들을 포함할 수 있다.
도시된 바와 같이, 스테이지들(1905-1915)은 슬라이딩 영역(120)의 상이한 구역들과 관련된 컬러들을 지시하기 위하여 도 13에 도시된 것과 동일한 컬러 선택 그리드를 표시한다. 전술한 동적 컬러 슬라이더 형상들과 유사하게, 도 19에 도시된 슬라이더 형상이 선택될 때, 일부 실시예들은 슬라이딩 영역(120) 상에 컬러 선택 그리드를 표시한다. 일부 실시예들은 상이한 슬라이더 형상이 선택될 때까지(슬라이더 형상이 슬라이딩 영역(120) 내에 이동 가능하게 배치되지 않는 경우에도) 컬러 선택 그리드를 표시한다.
GUI(1900)의 제1 스테이지(1905)는 슬라이더 형상(475)의 추가와 유사한 슬라이더 형상 생성기(1930)로부터 이차원 슬라이더 컨트롤로의 슬라이더 형상(1945)의 추가를 나타낸다. 도시된 바와 같이, 슬라이더 형상(1945)은 슬라이딩 영역(120)의 외측 에지 근처의 컬러 선택 그리드의 적색 웨지 내에 배치된다. 이것은 그 안에 적색을 갖는 이미지(1920)의 부분들에 적은 양의 적색 캐스트 연산을 적용한다. 이 예에서, 이미지(1920) 내의 배경 및 사람의 머리카락은 적색이거나 그 안에 적색을 갖는다. 따라서, 이미지(1920) 내의 이러한 영역들에 수평선들이 표시된다.
제2 스테이지(1910)에서, 이미지(1920)에 적용되는 컬러 캐스트 연산에 대한 조정이 수행된다. 슬라이더 형상(1945)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)을 향해 위로 좌측으로 이동 가능하게 배치된다. 이 스테이지에서의 슬라이더 형상(1945)의 위치는 여전히 컬러 선택 그리드의 적색 웨지 내에 있으며, 따라서 적색이거나 그 안에 적색을 포함하는 이미지(1920)의 부분들에 적용되는 적색의 양이 증가된다. 이것은 관찰 영역(660)에 표시되는 이미지(1920) 위의 추가적인 수평선들에 의해 도시된다.
제3 스테이지(1915)는 이미지(1920)에 적용되는 컬러 캐스트 연산에 대한 다른 조정을 나타낸다. 이 스테이지에서, 슬라이더 형상(1945)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 컬러 선택 그리드의 적색 웨지로부터 황색 에지로 좌측으로 이동 가능하게 배치된다. 또한, 슬라이더 형상(1945)으로부터 중심(125)까지의 방사상 거리는 그의 이전 위치와 동일하게 유지된다. 이 스테이지에서의 슬라이더 형상(1945)의 이동은 이미지(1920) 내의 라벨에 의해 지시되는 바와 같이 적색이거나 그 안에 적색을 포함하는 이미지(1920)의 부분들에 황색 캐스트 연산을 적용한다.
II. 슬라이더 연산들
전술한 바와 같이, 이차원 슬라이더 컨트롤의 일부 실시예들은 슬라이더 형상의 단일 배치를 통해 다수의 연산을 제어하는 슬라이더 형상들을 제공한다. 아래의 섹션은 그러한 슬라이더 형상들은 물론, 추가적인 타입들의 슬라이더 형상들 및 연산들의 예들을 설명한다.
A. 휘도 범위
도 20은 이차원 슬라이더 컨트롤(470)을 포함하는 일부 실시예들의 미디어 편집 애플리케이션의 GUI(2000)를 나타낸다. 일부 실시예들은 슬라이더 형상들에 의해 제어되는 컬러 수정 연산들의 적용을 편집되는 이미지의 휘도 값들의 특정 범위로 제한하는 특징을 제공한다. 도 20에서는, 이러한 휘도 범위 연산들 중 일부를 나타내기 위해 채도 연산들을 수행하기 위한 슬라이더 형상들이 사용된다. 이 도면은 여러 휘도 범위 연산의 4개의 상이한 스테이지(2005-2020)에서 GUI(2000)를 나타낸다. GUI(2000)는 관찰 영역(660)이 상이한 이미지(2025)를 표시한다는 점 외에는 도 8에 도시된 GUI(800)와 유사하다. 관찰 영역(660)의 좌하 코너로부터 우상 코너로 연장하는 대각선들이 도 9에서 사용된 대각선들과 유사한 방식으로 이미지(2025)에 적용되는 채도 연산의 효과들을 나타내기 위해 이미지(2025) 위에 표시된다.
제1 스테이지(2005)는 슬라이더 형상(2035)이 이차원 슬라이더 컨트롤(470)에 추가될 때의 GUI(2000)를 나타낸다. 도시된 바와 같이, 슬라이더 형상(2035)은 전술한 바와 같이 그러한 슬라이더 형상들을 생성하기 위한 것인 슬라이더 형상 생성기(835)로부터 생성되었으므로 이미지(2025)에 채도 연산을 적용하기 위한 것이다. 슬라이더 형상(2035)의 위치는 슬라이딩 영역(120)의 중심(125)에 가까우므로, 관찰 영역(660)에 표시된 이미지(2025) 위의 대각선들에 의해 표시되는 바와 같이 이미지(2025)에 많은 양의 채도 연산이 적용된다. 슬라이딩 영역(120)은 슬라이딩 영역(120)의 중심(125)에 또한 가까이 배치된 다른 슬라이더 형상(2030)도 포함한다.
일부 실시예들에서는, 동일 슬라이더 형상들 중 몇몇의 연산들이 집계된다. 즉, 각각의 슬라이더 형상의 연산이 결정되고, 편집되는 이미지에 개별적으로 적용된다. 그러나, 상이한 실시예들은 동일 슬라이더 형상들의 연산들을 상이하게 취급한다. 예컨대, 일부 실시예들에서는 동일 슬라이더 형상들 중 몇몇의 연산들이 평균되는 반면, 다른 실시예들에서는 최고 또는 최저의 양이 적용된다. 도 20에서는, 슬라이더 형상들(2030, 2035)의 연산들이 평균된다.
제2 스테이지(2010)는 팝업 메뉴(2050)의 서브메뉴(2055)로부터의 옵션의 선택을 나타낸다. 상이한 실시예들은 팝업 메뉴(2050)와 서브메뉴(2055)를 상이하게 호출한다. 예를 들어, 일부 실시예들은 핫키, 키스트로크, 키스트로크들의 조합 또는 커서 제어 동작(예를 들어, 우측 커서 클릭 동작 또는 제어 커서 클릭 동작)을 이용하여 팝업 메뉴(2050)와 서브메뉴(2055)를 호출한다. 이 스테이지에서 도시되는 다른 예로서, 슬라이더 형상(2030)이 먼저 선택되고, 이어서 팝업 메뉴(2050) 및 서브메뉴(2055)를 호출하기 위해 명령이 사용된다.
일부 실시예들에서, 서브메뉴(2055)에서 사용자 선택 가능 옵션들 중 하나를 선택하는 것은 슬라이더 형상(2030)의 채도 연산의 적용을 휘도 값들의 정의된 범위 내에 있는 휘도 값들을 갖는 이미지(2025) 내의 픽셀들의 세트로 제한한다. 예를 들어, 일부 실시예들에서, "쉐도우(Shadows)" 옵션은 채도 연산을 낮은 휘도 값들의 범위를 갖는 픽셀들의 세트(예를 들어, 이미지의 어두운 부분들)로 제한하고, "중간 톤" 옵션은 채도 연산을 중간 휘도 값들의 범위를 갖는 픽셀들의 세트(예를 들어, 이미지의 적당히 조명된 부분들)로 제한하며, "하이라이트" 옵션은 채도 연산을 높은 휘도 값들의 범위를 갖는 픽셀들의 세트(예를 들어, 이미지의 밝은 부분들)로 제한한다.
도시된 바와 같이, 채도 연산을 높은 휘도 값들을 갖는 이미지(2025) 내의 픽셀들에만 적용하기 위해 사용자 선택 가능 "하이라이트" 옵션이, 이 옵션의 하이라이팅에 의해 지시되는 바와 같이, (예를 들어, 클릭하거나 탭핑함으로써) 선택된다. 휘도 범위의 선택은 다음 스테이지에서 도시되는 바와 같이 "S"로부터 "SH"로의 슬라이더 형상(2030)의 라벨의 대응하는 변경에 의해 지시된다.
태양 및 태양에 가까운 영역들은 밝으므로, 슬라이더 형상(2030)의 채도 연산은 이미지(2025) 내에 나타난 이러한 영역에만 적용된다. 그러나, 슬라이더 형상(2035)의 채도 연산은 여전히 전체 이미지(2025)에 적용되며, 따라서 "하이라이트" 옵션의 선택 후에도 관찰 영역(660)에 표시된 전체 이미지(2025) 내에 대각선들이 여전히 표시된다.
제3 스테이지(2015)에서, 슬라이더 형상(2035)을 선택하고 제2 스테이지(2010)에서와 동일한 명령을 사용함으로써 동일 팝업 메뉴(2050) 및 서브메뉴(2055)가 호출된다. 그러나, 이 스테이지에서는, 이 메뉴 옵션의 하이라이팅에 의해 지시되는 바와 같이, 서브메뉴(2055)로부터 (예를 들어, 클릭하거나 탭핑함으로써) 사용자 선택 가능 "쉐도우" 옵션이 선택된다. 다음 스테이지에서 도시되는 바와 같이, 슬라이더 형상(2035)의 라벨은 휘도 범위의 선택을 지시하기 위해 "S"로부터 "SS"로 변경된다.
제4 스테이지(2020)는 휘도 범위 연산들이 완료된 후의 이미지(2025)를 나타낸다. 제3 스테이지(2015)에서의 선택은 슬라이더 형상(2035)의 채도 연산이 낮은 휘도 값들을 갖는 이미지(2025) 내의 픽셀들에만 적용되게 한다. 산의 좌측은 이미지(2025)의 유일한 쉐도우 영역이다. 전술한 바와 같이, 슬라이더 형상(2030)의 채도 연산은 태양 또는 태양에 가까운 영역들인 이미지(2025)의 밝은 영역들에만 적용된다. 따라서, 슬라이더 형상(2035)의 채도 연산은 전술한 이미지(2025)의 어두운 영역들에만 적용되고, 슬라이더 형상(2030)의 채도 연산은 이 스테이지에서 도시된 바와 같이 이미지(2025)의 밝은 영역들에만 적용된다.
도 20은 팝업 메뉴를 통한 휘도 범위의 선택을 나타낸다. 일부 실시예들에서, 휘도 범위는 대신에 핫키, 키스트로크 또는 키스트로크들의 조합을 이용하여 슬라이더 형상에 대해 선택될 수 있다. 이 도면은 채도 연산을 제어하는 슬라이더 형상에 대해 수행되는 휘도 범위 연산을 나타내지만, 휘도 범위 연산은 일부 실시예들에서 임의 타입의 컬러 수정 연산과 관련될 수 있는 임의의 슬라이더 형상에 대해 유사하게 수행될 수 있다.
도 21a-b는 일부 실시예들의 이차원 슬라이더 컨트롤(470)을 포함하는 미디어 편집 애플리케이션의 GUI(2100)를 개념적으로 나타낸다. 구체적으로, 이 도면들은 도 19에 도시된 이차원 슬라이더 컨트롤(470) 및 슬라이더 형상들을 이용하는 일부 실시예들의 다른 휘도 범위 연산을 나타낸다. GUI(2100)는 GUI(2100)가 상이한 이미지(2135)를 표시한다는 점 외에는 GUI(1900)와 유사하다. 도 21a-b는 또한 휘도 범위 연산의 6개의 상이한 스테이지(2105-2130)에서 GUI(2100)를 나타낸다.
이러한 스테이지들 각각에서는, 색조, 채도 및 휘도 포맷에서 정의되는 삼차원 컬러 공간의 개념적인 다이어그램이 도시된다. 도시된 바와 같이, 높은 휘도 값들(예를 들어, 백색)은 컬러 공간의 상부 평면들에 배치되고, 중간 휘도 값들(예를 들어, 중간 톤)은 컬러 공간의 중간 평면들에 배치되며, 낮은 휘도 값들(예를 들어, 흑색)은 컬러 공간의 하부 평면들에 배치된다. 휘도(Y) 축 주위의 각도는 컬러들(색조들)에 대응하고, 휘도 축으로부터의 방사상 거리는 채도를 나타낸다. 각각의 스테이지에서 이미지(2135)에 적용되는 컬러 수정 연산에 기초하는 컬러 공간의 변경들이 존재할 경우에 이들은 스테이지에서 GUI(2100) 옆의 대응하는 컬러 공간 다이어그램 내에 도시된다.
도 19와 유사하게, 이미지(2135)에 대한 컬러 캐스트 연산의 효과들을 나타내기 위하여 이미지(2135) 위에 수평선들 및 라벨이 표시된다. 이미지(2135) 위에 표시된 많은 수의 수평선들은 많은 양의 컬러 캐스트 연산을 나타내고, 이미지(2135) 위에 표시된 적은 수의 수평선들은 적은 양의 컬러 캐스트 연산을 나타낸다.
제1 스테이지(2105)에서, GUI(2100)는 이차원 슬라이더 컨트롤(470)의 슬라이딩 영역(120) 상에 표시된 컬러 선택 그리드를 나타낸다. 이 스테이지(및 다음 스테이지들(2110-2130))는 도 19에서의 컬러 선택 그리드의 표시와 유사한 방식으로 도 13에 도시된 것과 동일한 컬러 선택 그리드를 표시한다. 도시된 바와 같이, 이차원 슬라이더 컨트롤(470)은 그 안에 어떠한 슬라이더 형상도 갖지 않는다. 또한, 이미지(2135) 내의 밝은 배경 및 사람의 어두운 머리카락은 이미지(2135) 내의 라벨에 의해 지시되는 바와 같이 청색이다.
제2 스테이지(2110)는 슬라이더 형상(475)의 추가와 유사한 방식으로 슬라이더 형상 생성기(1940)로부터 슬라이딩 영역(120)으로의 슬라이더 형상들(2140, 2145)의 추가를 나타낸다. 도시된 바와 같이, 슬라이더 형상들(2140, 2145)은 컬러 선택 그리드의 청색 웨지(1350) 내에 배치된다. 전술한 바와 같이, 일부 실시예들은 슬라이딩 영역(120) 내의 동일 슬라이더 형상들 중 몇몇의 연산들을 집계하며, 일부 실시예들은 슬라이딩 영역(120) 내의 다수의 슬라이더 형상의 연산들을 처리하는 다른 방법들에 더하여 연산들을 평균한다. 이 예에서는, 컬러 캐스트 연산들이 평균된다. 청색이거나 그 안에 청색을 포함하는 이미지(2135)의 부분들에 대한 증가된 청색 캐스트 연산은 관찰 영역(660)에 표시된 이미지(2135) 위의 수평선들에 의해 도시된다.
제3 스테이지(2115)에서, 도 20에 도시된 팝업 메뉴(2050) 및 서브메뉴(2055)가 도 20을 참조하여 설명된 것과 유사한 방식으로 호출되고 표시된다. 이 스테이지에서는, 슬라이더 형상(2145)이 (예를 들어, 클릭하거나 탭핑함으로써) 선택되고, 팝업 메뉴(2050) 및 서브메뉴(2055)가 호출된다. 도시된 바와 같이, "쉐도우" 옵션이 선택되고, 이는 슬라이더 형상(2145)의 컬러 캐스트 연산을, 낮은 휘도 값들을 갖고 청색이거나 그 안에 청색을 포함하는 이미지(2135) 내의 픽셀들의 세트로 제한한다.
제4 스테이지(2120)는 슬라이더 형상(2140)이 (예를 들어, 클릭하거나 탭핑함으로써) 선택되고 팝업 메뉴(2050) 및 서브메뉴(2055)가 호출된다는 점 외에는 제3 스테이지(2115)와 유사하다. 이 스테이지에서는, "하이라이트" 옵션이 선택되고, 이는 슬라이더 형상(2140)의 컬러 캐스트 연산을, 높은 휘도 값들을 갖고 청색이거나 그 안에 청색을 포함하는 이미지(2135) 내의 픽셀들의 세트로 제한한다.
제5 스테이지(2125)에서, 이미지(2135)에 적용되는 슬라이더 형상(2145)의 컬러 캐스트 연산에 대한 조정이 행해진다. 도시된 바와 같이, 슬라이더 형상(2145)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)에 대해 동일한 거리를 유지하면서 컬러 선택 그리드의 청색 웨지로부터 적색 웨지로 이동 가능하게 배치된다. 이러한 이동의 결과로서, 청색이거나 그 안에 청색을 포함하는 이미지(2135)의 낮은 휘도 범위의 부분들에 적색 캐스트 연산이 적용되지만, 컬러 캐스트 연산의 양은 이전 스테이지에서 적용되는 양과 동일하게 유지된다. 전술한 바와 같이, 사람의 머리카락은 어두우며, 따라서 이러한 낮은 휘도 범위에 속한다. 이것은 관찰 영역(660)에 표시된 이미지(2135) 내의 사람의 머리카락의 라벨에 대한 변경에 의해 도시된다.
더욱이, 이러한 컬러 캐스트 연산에 대한 조정은 이 스테이지에서 GUI(2100)의 우측에 도시된 바와 같이 컬러 공간의 다이어그램에 대한 대응하는 변경을 유발한다. 구체적으로, 조정은 최저 휘도 평면(즉, 흑색)에서의 컬러 공간 내의 컬러들이 화살표로 나타낸 방향을 향해 휘게 한다. 이 스테이지에서의 다이어그램에 도시된 바와 같이, 최저 휘도 평면에서의 컬러 공간의 컬러들은 적색의 방향으로 이동한다. 게다가, 최저 휘도 평면과 중간 휘도 평면 사이의 휘도 평면들에서의 컬러 공간들의 컬러들도 적색을 향해 이동한다. 그러나, 휘도 레벨이 중간 휘도 레벨에 가까울수록, 휘도 레벨의 컬러 공간의 컬러들은 더 적게 적색을 향해 휜다.
제6 스테이지(2130)는 이미지(2135)에 적용되는 슬라이더 형상(2140)의 컬러 캐스트 연산에 대한 조정을 나타낸다. 이 스테이지에서, 슬라이더 형상(2140)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)에 대한 그의 거리를 유지하면서 컬러 선택 그리드의 청색 웨지로부터 녹색 웨지로 이동 가능하게 배치된다. 이러한 이동에 기초하여, 청색이거나 그 안에 청색을 포함하는 이미지(2135)의 부분들에 녹색 캐스트 연산이 적용되지만, 적용되는 컬러 캐스트 연산의 양은 이미지(2135) 위에 동일한 수의 선들을 표시함으로써 도시되는 바와 같이 이전 스테이지에서 적용되는 양과 동일하다.
제5 스테이지(2125)와 유사하게, 이 스테이지에서의 컬러 캐스트 연산에 대한 조정도 GUI(2100)의 우측에 도시된 바와 같이 컬러 공간의 다이어그램에 대한 대응하는 변경을 유발한다. 구체적으로, 조정은 높은 휘도 평면에서의 컬러 공간의 컬러들이 화살표로 나타낸 방향을 향해 휘게 한다. 도시된 바와 같이, 최고 휘도 평면에서의 컬러 공간의 컬러들은 녹색의 방향으로 이동한다. 최고 휘도 평면과 중간 휘도 평면 사이의 휘도 평면들에서의 컬러 공간들의 컬러들도 녹색을 향해 이동하지만, 휘도 레벨이 중간 휘도 레벨에 가까울수록, 휘도 레벨의 컬러 공간의 컬러들은 더 적게 녹색을 향해 휜다.
일부 실시예들에서, 슬라이더 형상들(2140, 2145)을 슬라이딩 영역(120) 내에 이동 가능하게 배치하는 것은 컬러 공간에 적용되는 대응하는 벡터 입력을 제공한다. 일부 그러한 실시예들에서, 대응하는 벡터의 방향은 슬라이더 형상과 관련된 컬러 캐스트 연산이 적용되는 이미지의 부분들을 식별하는 데 사용되는 컬러와 동일한 컬러 공간 내의 컬러로부터 시작하도록 정의된다. 벡터의 방향은 슬라이더 형상이 위치하는 컬러 웨지의 컬러와 동일한 컬러 공간 내의 컬러를 향한다. 제5 스테이지(2125)에서의 슬라이더 형상(2145)을 일례로 이용하면, 벡터의 방향은 컬러 공간의 청색(즉, "B")으로부터 향하는데, 그 이유는 슬라이더 형상(2145)과 관련된 컬러 캐스트 연산이 적용되는 이미지(2135)의 부분들을 식별하는 데 사용된 컬러가 청색이기 때문이다. 슬라이더 형상(2145)은 적색 웨지 내에 배치되므로, 벡터의 방향은 컬러 공간의 적색(즉, "R")을 향한다. 제5 스테이지(2125)에서의 컬러 공간 다이어그램 내의 화살표는 그러한 설명된 방향으로 향하도록 도시된다.
상이한 실시예들은 벡터의 크기를 상이하게 정의한다. 예를 들어, 일부 실시예들은 벡터의 시작 포인트를 슬라이딩 영역(120)의 중심(125)으로서 그리고 종료 포인트를 슬라이더 형상이 이동 가능하게 배치된 후의 슬라이더 형상의 위치로서 정의한다. 제5 스테이지(2125)에서의 슬라이더 형상(2145)의 이동 가능 배치를 일례로서 참조하면, 대응하는 벡터의 크기는 중심(125)으로부터 슬라이딩 영역(120) 내의 슬라이더 형상(2145)의 위치까지의 선의 크기이다.
다른 실시예들에서, 벡터의 시작 포인트는 슬라이더 형상이 이동 가능하게 배치되기 전의 슬라이더 형상의 위치로서 정의된다. 또 다른 실시예들에서, 벡터의 시작 포인트는 슬라이더 형상의 컬러 캐스트 연산과 관련된 컬러와 동일한 컬러인 컬러 선택 그리드의 컬러 웨지 내의 특정한 정의된 포인트이다. 제5 스테이지(2125)에서의 슬라이더 형상(2145)을 그러한 실시예들의 일례로서 참조하면, 슬라이더 형상(2145)의 이동 가능 배치의 대응하는 벡터의 시작 포인트는 청색 웨지 내의 특정한 정의된 포인트일 수 있는데, 그 이유는 청색이 슬라이더 형상(2145)의 컬러 캐스트 연산과 관련되기 때문이다.
도 21a-b는 특정 컬러를 갖는 편집되는 현재 이미지의 부분들에 대한 컬러 캐스트 연산의 적용에 기초하는 컬러 공간에 대한 변경들을 개념적으로 나타내기 위해 색조, 채도, 휘도 모델을 사용하지만, 통상의 기술자는 컬러 공간에 대한 이러한 효과들을 나타내는 다른 방법들이 가능하고 도 21a-b에 도시된 다이어그램들이 개념적이고 설명의 목적을 위한 것일 뿐이라는 것을 인식할 것이다.
B. 스위칭 가능 연산 슬라이더들
스위칭 가능 연산 슬라이더 형상은 일부 실시예들의 다른 타입의 슬라이더 형상이다. 일부 실시예들에서는 다수의 연산이 스위칭 가능 연산 슬라이더 형상과 관련된다. 슬라이더 형상의 하나의 연산만이 주어진 시간에 활성일 수 있지만, 슬라이더 형상은 임의의 시간에 상이한 연산들 사이에서 스위칭할 수 있다. 이러한 타입의 슬라이더 형상들은 사용자로 하여금 단일 슬라이더 형상을 통해 상이한 연산들 사이에서 빠르게 스위칭하게 할 수 있다.
임의 수의 상이한 연산들이 스위칭 가능 연산 슬라이더 형상의 상이한 실시예들과 관련될 수 있다. 예를 들어, 일부 실시예들은 2개의 상반되는 컬러 수정 연산(예를 들어, 콘트라스트/역 콘트라스트, 채도/역 채도 등)을 스위칭 가능 연산 슬라이더 형상과 연관시킬 수 있다.
도 22는 일부 실시예들의 이차원 슬라이더 컨트롤(470)의 스위칭 가능 연산 슬라이더 형상을 나타낸다. 이 도면은 일부 실시예들의 스위칭 가능 연산 슬라이더 형상을 이용하는 스위치 동작의 4개의 상이한 스테이지(2205-2220)에서 GUI(2200)를 나타낸다. 이 예에서, 슬라이더 형상(2230)은 명도 연산 및 암도(darkness) 연산과 스위칭 가능하게 관련된다. 전술한 명도 연산과 달리, 암도 연산은 이미지 내의 픽셀들의 휘도 값들을 특정 양만큼 감소시켜, 더 어두운 이미지를 생성한다. 일부 그러한 실시예들은 휘도 값들에 특정 값(예를 들어, 0.9, 0.5, 0.2 등)을 곱함으로써 휘도 값들을 감소시킨다. 도 22는 관찰 영역(660)이 상이한 이미지(2225)를 표시한다는 점 외에는 도 8을 참조하여 전술한 GUI(800)와 유사한 GUI(2200)를 나타낸다. 이미지(2225)는 사람의 밝은 회색 이미지이다.
GUI(2200)의 제1 스테이지(2205)는 슬라이더 형상(475)의 추가와 유사한 방식으로 슬라이더 형상 생성기(845)로부터 슬라이딩 영역(120)으로의 슬라이더 형상(2230)의 추가를 나타낸다. 도시된 바와 같이, 슬라이더 형상(2230)은 슬라이딩 영역(120)의 외측 에지를 따라 배치되며, 이는 이미지(2225)에 명도 연산을 거의 또는 전혀 적용하지 않는다. 이것은 이미지(2225) 내의 사람의 여전히 밝은 회색 이미지에 의해 도시된다.
제2 스테이지(2210)에서, 이미지(2225)에 적용되는 명도 연산이 조정된다. 도시된 바와 같이, 슬라이더 형상(2230)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)을 향해 위로 좌측으로 이동 가능하게 배치된다. 이러한 조정은 관찰 영역(660)에 표시된 이미지(825)에 나타난 바와 같이 사람의 이미지가 밝아지게 한다.
제3 스테이지(2215)에서, 슬라이더 형상(2230)이 (예를 들어, 클릭하거나 탭핑함으로써) 선택되고, 전술한 바와 같이 도 13의 메뉴들을 호출하는 데 사용된 것과 유사한 방식을 이용하여 팝업 메뉴(2235)가 호출된다. 팝업 메뉴(2235)는 사용자 선택 가능 "삭제", "반전" 및 "특성" 옵션들을 포함한다. "삭제" 및 "특성" 옵션은 도 18을 참조하여 전술한 팝업 메뉴(1840)에 포함된 것들과 유사하다. 일부 실시예들에서, 스위치 동작은 슬라이더 형상(2230)을 (예를 들어, 클릭하거나 탭핑함으로써) 선택함으로써 개시된다.
"반전" 옵션은 슬라이더 형상(2230)에 대한 명도 연산과 암도 연산 사이에서 스위칭하기 위한 것이다. 도시된 바와 같이, 이 스테이지에서 "반전" 옵션이 선택되며, 이는 슬라이더 형상(2230)이 명도 연산과 관련되는 것으로부터 암도 연산과 관련되는 것으로 스위칭하게 한다. 이제, 명도 연산 대신에 암도 연산이 이미지(2225)에 적용된다. 이미지(2225)에 적용되는 암도 연산의 효과들은 슬라이딩 영역(120) 내의 슬라이더 형상(2230)의 위치에 기초한다. 이것은 이미지(2225)에 연산이 거의 또는 전혀 적용되지 않는 경우의 제1 스테이지(2205)에서의 사람의 이미지보다 어두운 사람의 이미지(2225)를 표시함으로써 도시된다.
제4 스테이지(2220)는 이미지(2225)에 적용되는 암도 연산에 대한 조정을 나타낸다. 도시된 바와 같이, 슬라이더 형상(2230)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이딩 영역(120)의 중심(125)으로부터 멀어지게 약간 아래로 좌측으로 이동 가능하게 배치된다. 이러한 이동은 이미지(2225)에 적용되는 암도 연산의 감소를 유발한다. 따라서, 이전 스테이지에서 표시된 것보다 밝은 사람 이미지가 이미지(2225) 위에 표시된다.
이 스테이지에서 도시된 바와 같이, 일부 실시예들은 슬라이더 형상(2230)의 활성 연산을 지시하기 위해 슬라이더 형상(2230) 상의 라벨을 "B"로부터 "-B"로 변경한다. 일부 실시예들은 암도 연산이 슬라이더 형상(2230)과 관련된 현재 연산임을 지시하기 위해 라벨을 "D"로 변경한다. 그러나, 슬라이더 형상(2230)의 외관을 변경하는 임의 수의 상이한 방법들이 가능하다. 예를 들어, 슬라이더 형상(1630)의 라벨, 형상, 크기, 폰트 등이 변경될 수 있다.
도 22는 스위칭 가능 연산 슬라이더 형상의 일례를 나타낸다. 전술한 바와 같이, 스위칭 가능 연산 슬라이더 형상들의 상이한 실시예들은 상이하게 정의될 수 있다. 일부 실시예들은 예를 들어 가장 일반적으로 사용되는 연산들, 가장 적게 사용되는 연산들 또는 가장 관련된 연산들을 관련 연산들 사이에서 스위칭할 수 있는 슬라이더 형상과 연관시킬 수 있다. 따라서, 임의 수의 연산들 및 임의 수의 상이한 타입의 연산들이 스위칭 가능 연산 슬라이더 형상과 관련될 수 있다.
도 22는 연산들 사이에서 스위칭하기 위한(즉, 메뉴를 제공하기 위한) 한 가지 기술을 나타내지만, 다른 실시예들은 다수의 상이한 방법을 이용한다. 예를 들어, 연산들은 슬라이더 형상 위를 더블 클릭하거나 키스트로크, 키스트로크들의 조합 또는 핫키를 이용함으로써 순환될 수 있다. 더구나, 다른 실시예들은 전술한 것과 다른 스위치 동작 개시 방법들을 제공한다. 예를 들어, 키스트로크, 키스트로크들의 조합, 핫키 또는 풀다운 메뉴 명령도 스위치 동작을 개시하는 데 사용될 수 있다.
C. 다중 연산 슬라이더 형상들
일부 실시예들의 다른 타입의 슬라이더 형상은 다중 연산 슬라이더 형상이다. 일부 실시예들의 다중 연산 슬라이더 형상의 경우, 슬라이더 형상은 다수의 연산이 슬라이더 형상과 관련되도록 정의된다. 스위칭 가능 연산 슬라이더 형상들과 달리, 다중 연산 슬라이더 형상과 관련된 모든 연산들은 동시에 활성이며, 따라서 슬라이딩 영역 내의 슬라이더 형상의 단일 배치를 통해 다수의 연산이 수행되는 것을 가능하게 한다.
도 23은 다중 연산 슬라이더 형상의 일례를 개념적으로 나타낸다. 구체적으로, 이 도면은 3개의 상이한 스테이지(2305, 2310, 2315)에서 이차원 슬라이더 컨트롤(470)을 나타낸다. 이러한 스테이지들은 아래에 더 상세히 설명된다. 그러나, 이차원 슬라이더 컨트롤(470)의 요소들이 먼저 설명된다.
도시된 바와 같이, 이차원 슬라이더 컨트롤(470)은 슬라이딩 영역(120), 원(2330) 및 슬라이더 형상(2325)을 포함하며, 슬라이더 형상은 슬라이더 형상을 다중 연산 슬라이더 형상으로서 식별하기 위해 "M"으로 라벨링된다. 일부 실시예들에서, 2개의 컬러 캐스트 연산이 슬라이더 형상(2325)과 관련된다. 이 예에서, 제1 컬러 캐스트 연산은 도 16을 참조하여 전술한 동적 컬러 슬라이더 형상(1630)과 유사한 방식으로 슬라이더 형상(2325)에 의해 제어된다. 이러한 이유 때문에, 도 16에 도시된 것과 같은 컬러 선택 그리드가 이차원 슬라이더 컨트롤(470) 내에 표시된다. 제2 컬러 캐스트 연산도 제2 컬러 캐스트 연산과 관련된 컬러가 컬러 선택 그리드에서 슬라이더 형상(2325)에 의해 지시되는 컬러와 상반되는 컬러라는 점 외에는 도 16을 참조하여 전술한 동적 컬러 슬라이더 형상(1630)과 유사한 방식으로 슬라이더 형상(2325)에 의해 제어된다.
제2 컬러 캐스트 연산을 시각적으로 나타내기 위하여, 슬라이더 형상(2325)에 연결된 선이 슬라이딩 영역(120)의 중심을 통해 슬라이딩 영역(120)의 타측으로 연장되며, 원(2330)이 선의 다른 단부에 연결된다. 원(2330)은 제2 컬러 캐스트 연산과 관련된 실제 컬러를 나타내기 위하여 슬라이딩 영역(120) 내의 슬라이더 형상(2325)의 배치를 미러링한다. 달리 말하면, 슬라이더 형상(2325)이 이동 가능하게 배치되는 임의의 위치에 대해, 원(2330)은 슬라이더 형상(2325)으로부터 180도 오프셋된 상태로 유지되며, 슬라이더 형상(2325)과 동일한 방사상 거리를 유지한다. 일부 실시예들에서, 2개의 컬러 캐스트 연산은 단지 슬라이더 형상(2325)에 의해 표현된다. 이러한 실시예들에서, 슬라이딩 영역(120) 내의 슬라이더 형상(2325)의 배치는 단지 하나의 컬러 캐스트 연산과 관련된 컬러를 시각적으로 표현한다. 다른 컬러 캐스트 연산과 관련된 컬러는 컬러 선택 그리드에서 슬라이더 형상(2325)에 의해 지시되는 컬러와 여전히 상반되지만, 시각적으로 표현되지 않는다.
이제, 이차원 슬라이더 컨트롤(470)의 동작이 도 23에 도시된 3개의 상이한 스테이지(2305, 2310, 2315) 동안의 이 이차원 슬라이더 컨트롤의 상태를 참조하여 설명된다. 제1 스테이지(2305)는 2개의 컬러 캐스트 연산과 관련된 컬러들을 변경하기 위한 연산의 시작 전의 이차원 슬라이더 컨트롤(470)을 나타낸다. 제2 스테이지(2310)는 컬러 연관성이 변경된 후의 이차원 슬라이더 컨트롤(470)을 나타낸다. 제1 및 제2 스테이지들(2305, 2310) 사이에, 슬라이더 형상(2325)이 선택되고, (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 제1 스테이지(2305)에서의 그의 위치로부터 제2 스테이지(2310)에서의 그의 위치로 이동 가능하게 배치된다. 이러한 이동은 슬라이더 형상(2325)의 이전 위치를 나타내는 점원으로부터 그의 현재 위치로 향하는 화살표에 의해 지시된다. 제2 동적 컬러 슬라이더 형상 연산에 의한 슬라이더 형상(2325)의 미러링을 시각적으로 나타내기 위하여, 원(2330)도 슬라이딩 영역(120) 내의 슬라이더 형상(2325)에 대향하는 위치로 이동 가능하게 배치된다.
제3 스테이지(2315)는 슬라이더 형상(2325)과 관련된 컬러 캐스트 연산들 각각에 의해 편집되는 이미지(도시되지 않음)에 적용되는 컬러의 양에 대한 변경 후의 이차원 슬라이더 컨트롤(470)을 나타낸다. 제2 스테이지(2310)와 제3 스테이지(2315) 사이에, 슬라이더 형상(2325)을 선택하고, 슬라이더 형상(2325)의 이전 위치로부터 그의 현재 위치로 향하는 화살표에 의해 지시되는 바와 같이 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 슬라이더 형상(2325)을 슬라이딩 영역(120)의 중심을 향해 이동 가능하게 배치함으로써 양이 변경되었다. 원(2330)도 제2 동적 컬러 슬라이더 형상의 미러링 연산을 시각적으로 나타내기 위해 슬라이딩 영역(2325)의 중심을 향해 대응하는 동일 거리만큼 더 가까이 이동하였다.
제2 및 제3 스테이지들(2310, 2315)을 참조하여 설명된 예시적인 연산들은 연산들을 수행하기 위해 슬라이더 형상(2325)이 선택되고 이동 가능하게 배치되는 것을 나타낸다. 그러나, 일부 실시예들에서, 원(2330)은 사용자가 선택할 수 있으며, 따라서 동일 또는 유사한 연산들을 수행하도록 선택되고 이동 가능하게 배치될 수 있다. 다른 실시예들에서, 원(2330)은 사용자가 선택할 수 없다.
도 23에 도시된 다중 연산 슬라이더 형상은 다중 연산 슬라이더 형상들의 많은 상이한 실시예 중 하나일 뿐이다. 예를 들어, 일부 실시예들은 슬라이딩 영역(120) 내의 슬라이더 형상(2325)으로부터의 상이한 각도 오프셋에 기초하도록 제2 컬러 캐스트 연산과 관련된 컬러를 정의한다. 슬라이더 형상(2325)으로부터 180도 오프셋된 컬러를 연관시키도록 제2 컬러 캐스트 연산을 정의하는 것이 아니라, 일부 그러한 실시예들은 슬라이더 형상(2325)으로부터 상이한 각도 오프셋(예를 들어, 60도 시계 방향, 45도 반시계 방향 등)에서 컬러를 연관시키도록 제2 컬러 캐스트 연산을 정의하며, 슬라이더 형상(2325)으로부터 정의된 각도 오프셋에서 원(2330)을 표시한다. 도 23에 도시된 제2 컬러 캐스트 연산은 제1 컬러 캐스트 연산과 동일한 양을 적용하도록 정의되지만, 일부 실시예들은 제1 컬러 캐스트 연산에 의해 적용되는 양의 비율에 기초하여 컬러의 양을 적용하도록 제2 컬러 캐스트 연산을 정의한다.
더구나, 상이한 연산들(예컨대, 채도 연산, 콘트라스트 연산, 노출 연산, 사전 정의된 함수 등) 및 상이한 수의 연산들이 다중 연산 슬라이더 형상의 상이한 실시예들과 관련될 수 있다. 하나의 그러한 예는 2개의 감마 함수를 도 23에서 전술한 2개의 컬러 캐스트 연산과 결합하여, 일부 실시예들의 슬라이더 형상과 관련된 4개의 연산을 정의한다. 따라서, 2개의 컬러 캐스트 연산에 더하여, 일부 실시예들은 편집되는 이미지에 아래의 방정식을 적용한다.
Figure 112013020547703-pct00001
여기서, Pin = 입력 RGB 픽셀 값, Pout = 출력 RGB 픽셀 값, gamma1 = Pin x,
Figure 112013020547703-pct00002
g = RGB 감마 값,
Figure 112013020547703-pct00003
이다.
RGB 픽셀은 3개의 성분을 가지므로, 방정식은 아래와 같이 각각의 성분에 적용된다.
Figure 112013020547703-pct00004
다른 실시예들에서, 위에서 제공된 2개의 감마 함수는 일부 실시예들의 슬라이더 형상과 관련된 상이한 4개의 함수를 정의하기 위해 채도 함수 및 콘트라스트 함수와 결합된다. 따라서, 임의 수의 상이한 조합들이 가능하다.
D. 슬라이더 형상들의 그룹핑
이전 섹션들은 슬라이더 형상들을 이차원 슬라이더 컨트롤의 슬라이딩 영역 내에 한 번에 하나씩 이동 가능하게 배치하는 것을 설명하였다. 일부 실시예들은 사용자가 다수의 슬라이더 형상을 선택한 후에 선택된 슬라이더 형상들을 함께 이동 가능하게 배치하는 것을 허용한다. 그렇게 함으로써, 다수의 연산이 동시에 수행될 수 있으므로, 연산들이 더 빠르고 효율적으로 수행될 수 있다.
도 24는 그러한 연산의 일례를 개념적으로 나타낸다. 도 24는 슬라이더 형상 그룹핑 동작의 4개의 상이한 스테이지(2405, 2410, 2415, 2420)에서 일부 실시예들의 이차원 슬라이더 컨트롤(470)을 나타낸다. 도시된 바와 같이, 이차원 슬라이더 컨트롤(470)은 슬라이딩 영역(120) 및 슬라이더 형상들(2430-2445)을 포함한다.
제1 스테이지(2405)는 슬라이더 형상들의 선택 동안의 이차원 슬라이더 컨트롤(470)을 나타낸다. 이 스테이지에서는 슬라이더 형상(2430)이 (예를 들어, 키보드 키를 누른 상태로 유지하고 클릭하거나 탭핑함으로써) 선택되었다. 선택은 슬라이더 형상(2430) 주위의 테두리를 굵게 함으로써 지시된다. 제2 스테이지(2410)는 슬라이더 형상들의 선택이 완료된 후의 이차원 슬라이더 컨트롤(470)을 나타낸다. 이 스테이지에서는 슬라이더 형상들(2440, 2445)도 (예를 들어, 키보드 키를 누른 상태로 유지하고 클릭하거나 탭핑함으로써) 선택되었다. 제1 스테이지(2405)와 유사하게, 이 스테이지에서의 슬라이더 형상들의 선택은 슬라이더 형상들(2440, 2445) 주위의 테두리들을 굵게 함으로써 지시된다. 통상의 기술자는 상이한 실시예들이 맞춤형 슬라이더 형상을 생성하기 위해 슬라이더 형상들을 선택하기 위한 상이한 방법들을 이용할 수 있다는 것을 인식할 것이다. 예를 들어, 다른 가능한 방법들은 선택 박스를 이용하거나, 일련의 키보드 키스트로크들을 이용하거나, 키스트로크들의 조합을 이용하는 것이다.
제3 스테이지(2415)는 선택된 슬라이더 형상들의 그룹의 이동 가능 배치 동안의 이차원 슬라이더 컨트롤(470)을 나타낸다. 이 스테이지에서, 선택된 슬라이더 형상들(2430, 2440, 2445)은 슬라이더 형상들(2430-2445) 중 하나를 선택한 후에 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 그것을 슬라이딩 영역(120) 내에 이동 가능하게 배치함으로써 함께 이동 가능하게 배치된다. 슬라이더 형상들(2430, 2440, 2445) 아래의 화살표들로 지시되는 바와 같이, 슬라이더 형상들(2430-2445) 중 하나의 슬라이더 형상의 이동 가능 배치는 또한 나머지 2개의 슬라이더 형상이 동일한 거리만큼 동일한 방향으로 이동하게 한다. 제3 스테이지(2415)는 슬라이더 형상들 중 하나의 슬라이더 형상의 선택 및 이동 가능 배치를 도시하지만, 선택된 슬라이더 형상들의 그룹을 이동시키기 위해 그룹 내의 임의의 다른 선택된 슬라이더 형상들에 대해 동일 동작(예를 들어, 드래그 앤 드롭 동작)이 수행될 수 있다.
제4 스테이지(2420)는 제3 스테이지(2415)에서의 선택된 슬라이더 형상들의 이동 가능 배치의 완료 후의 이차원 슬라이더 컨트롤(470)을 나타낸다. 도시된 바와 같이, 슬라이더 형상들(2430, 2440, 2445)이 여전히 선택되어 있다(즉, 테두리들이 여전히 굵다). 따라서, 선택된 슬라이더 형상들(2430, 2440, 2445)의 그룹은 여전히 함께 이동 가능하게 배치될 수 있다.
도 24는 슬라이더 형상들을 선택하고 선택된 슬라이더 형상들의 그룹을 슬라이딩 영역 내에 이동 가능하게 배치하기 위한 동작들의 예시적인 시퀀스를 나타낸다. 그러나, 임의의 스테이지들 사이에서, 임의의 선택된 슬라이더 형상이 (예를 들어, 키보드 키를 누른 상태로 유지하고 클릭하거나 탭핑 등을 행함으로써) 선택 해제될 수 있고, 임의의 선택되지 않은 슬라이더 형상들(즉, 슬라이더 형상(2435))이 선택될 수 있고(그리고 슬라이딩 영역(120) 내에 이동 가능하게 배치될 수 있고), 선택된 슬라이더 형상들의 그룹 내의 임의의 슬라이더 형상이 슬라이더 형상들의 그룹을 슬라이딩 영역(120) 내에 이동 가능하게 배치하는 데 사용될 수 있다.
E. 맞춤형 슬라이더 형상들
이전 섹션들은 (예를 들어, 그러한 슬라이더 형상들을 제공하는 애플리케이션의 개발자에 의해) 사전 정의된 다중 연산 슬라이더 형상들의 다양한 실시예들을 설명하였다. 일부 실시예들은 상이한 타입의 다중 연산 슬라이더 형상, 즉 사용자 맞춤화 가능 슬라이더 형상을 제공한다. 일부 실시예들에서, 맞춤형 슬라이더 형상들은 다수의 연산의 조합이 이미지(도시되지 않음) 상에 생성하는 바람직한 모양 또는 외관을 쉽고 일관되게 복제하는 데 사용된다. 더욱이, 맞춤형 슬라이더 형상은 슬라이딩 영역 내의 슬라이더 형상들의 수를 줄이면서도 맞춤형 슬라이더 형상에 의해 표현되는 슬라이더 형상들과 관련된 연산들을 유지할 수 있다.
도 25는 일부 실시예들의 맞춤형 슬라이더 형상을 개념적으로 나타낸다. 이 도면은 맞춤형 슬라이더 생성 동작의 3개의 상이한 스테이지(2505, 2510, 2515)에서 일부 실시예들의 이차원 슬라이더 컨트롤(470)을 나타낸다. 도시된 바와 같이, 이차원 슬라이더 컨트롤(470)은 슬라이딩 영역(120) 및 슬라이더 형상들(2525-2535)을 포함한다. 이 예에서, 슬라이더 형상들(2525-2535)은 각각 채도 연산, 콘트라스트 연산 및 노출 연산을 각각 제어하도록 정의된다. 이들의 연산은 슬라이더 형상들(2525-2535) 각각 상의 라벨들(즉, "S", "C" 및 "E")에 의해 지시된다.
일부 실시예들에서, 맞춤형 슬라이더 형상은 다수의 슬라이더 형상(즉, 다수의 연산)의 구성을 나타내는 단일 슬라이더 형상이다. 일부 실시예들의 맞춤형 슬라이더들은 도 23을 참조하여 전술한 다중 연산 슬라이더 형상과 같은 다른 다중 연산 슬라이더 형상들도 포함할 수 있다.
제1 스테이지(2505)는 맞춤형 슬라이더 형상을 생성하기 위한 슬라이더 형상들의 선택 동안의 이차원 슬라이더 컨트롤(2500)을 나타낸다. 이 스테이지에서, 슬라이더 형상(2525)이 (예를 들어, 키보드 키를 누른 상태로 유지하고 좌측 클릭에 의해) 선택된다. 선택은 슬라이더 형상(2525) 주위의 테두리를 굵게 표시함으로써 지시된다.
제2 스테이지(2510)는 슬라이더 형상들의 선택의 완료 후의 이차원 슬라이더 컨트롤(470)을 나타낸다. 이 스테이지에서, 슬라이더 형상들(2530, 2535)도 (예를 들어, 키보드 키를 누른 상태로 유지하고 클릭, 탭핑 등에 의해) 선택된다. 선택은 또한 슬라이더 형상들(2530, 2535) 주위의 테두리들을 굵게 표시함으로써 지시된다. 통상의 기술자는 상이한 실시예들이 맞춤형 슬라이더 형상을 생성하기 위해 슬라이더 형상들을 선택하기 위한 상이한 방법들을 이용할 수 있다는 것을 인식할 것이다. 예를 들어, 가능한 방법들은 선택 박스, 일련의 키보드 키스트로크들 또는 키스트로크들의 조합을 이용하는 것이다.
도시된 바와 같이, 제2 스테이지(2510)는 팝업 메뉴(2520)에 포함된 사용자 선택 가능 "맞춤" 옵션의 선택을 표시한다. 상이한 실시예들은 도 13을 참조하여 전술한 팝업 메뉴(1320)를 호출하는 데 사용된 상이한 방법들과 유사하게 팝업 메뉴(2520)를 호출한다. "맞춤" 옵션은 맞춤형 슬라이더 형상의 생성시에 선택된 슬라이더 형상들의 구성에 기초하여 맞춤형 슬라이더 형상을 생성하기 위한 것이다.
제3 스테이지(2515)는 라벨 "C1"로 지시되는 맞춤형 슬라이더 형상(2545)의 생성 후의 이차원 슬라이더 컨트롤(470)을 나타낸다. 맞춤형 슬라이더 형상(2545)은 슬라이더 형상들(2525, 2530, 2535)과 관련된 연산들을 나타내며, 그것은 이러한 연산들을 맞춤형 슬라이더 형상(2545)이 생성된 때의 슬라이더 형상들(2525, 2530, 2535)의 위치들에 기초하여 편집되는 이미지에 적용한다. 이러한 방식으로, 맞춤형 슬라이더 형상(2545)은 슬라이더 형상들(2525, 2530, 2535)과 관련된 연산들의 편집되는 이미지에 대한 적용에 의해 생성되는 모양 또는 외관을 재생할 수 있다.
제2 스테이지(2510)와 제3 스테이지(2515) 사이에서, 맞춤형 슬라이더 형상(2545)을 생성하기 위해 "맞춤" 옵션이 선택되었다. 상이한 실시예들은 맞춤형 슬라이더 형상(2545)의 생성을 호출하기 위한 상이한 방법들을 제공한다. 예를 들어, 선택된 슬라이더 형상들에 기초하는 맞춤형 슬라이더 형상의 생성을 호출하기 위해 키보드 키스트로크, 키스트로크들의 조합, 핫키, 풀다운 또는 팝업 메뉴로부터 선택된 옵션이 사용될 수 있다. 이 스테이지에서, 맞춤형 슬라이더 형상(2545)이 생성되기 바로 전의 슬라이더 형상들(2525, 2530, 2535)의 이전 위치들을 지시하는 점선 원들은 생성된 맞춤형 슬라이더 형상(2545)에 의해 표현되는 슬라이더 형상들의 구성을 나타내기 위한 것이다. 일부 실시예들에서, 슬라이더 형상들의 점선 원들은 실제로는 표시되지 않는다.
일부 실시예들은 맞춤형 슬라이더 형상을 온/오프 스위치와 같이 동작하도록 정의한다. 예를 들어, 맞춤형 슬라이더 형상(2545)을 슬라이딩 영역(120) 밖에 이동 가능하게 배치하는 것은 편집되는 이미지에 어떠한 컬러 수정 연산도 적용하지 않는다. 그러나, 맞춤형 슬라이더 형상(2545)을 슬라이딩 영역(120) 내의 어디든 이동 가능하게 배치하는 것은 맞춤형 슬라이더 형상(2545)의 생성이 호출될 때의 슬라이딩 영역(120) 내의 그들 각각의 위치들(즉, 이 예에서는 제2 스테이지(2510)에서의 슬라이더 형상들(2525, 2530, 2535)의 위치들)에서 슬라이더 형상들(2525, 2530, 2535)의 연산들을 적용한다.
일부 실시예들에서, 맞춤형 슬라이더를 슬라이딩 영역 내에 이동 가능하게 배치하는 것은 맞춤형 슬라이더의 결합된 연산들의 적용을 변경할 수 있다. 예를 들어, 제3 스테이지(2515)에 도시된 바와 같이, 맞춤형 슬라이더 형상(2545)을 슬라이딩 영역(120)의 외측 원과 내측 원 사이의 중간에 이동 가능하게 배치하는 것은 맞춤형 슬라이더 형상(2545)의 생성이 호출된 때의 슬라이더 형상들(2525, 2530, 2535)의 위치들에 기초하여 연산들을 적용한다. 맞춤형 슬라이더 형상(2545)을 외측 원을 향해 이동 가능하게 배치하는 것은 편집되는 이미지에 대한 슬라이더 형상들의 상대적인 연산들을 줄이고, 그것을 슬라이딩 영역(120)의 중심을 향해 이동 가능하게 배치하는 것은 슬라이더 형상들의 상대적 연산들을 늘린다. 다른 실시예들에서는 맞춤형 슬라이더 형상(2545)을 통해 결합된 연산들을 제어하는 다른 방법들이 가능하다.
더욱이, 일부 실시예들은 맞춤형 슬라이더 형상들을 나중의 사용을 위해 저장하고, 다른 동일 또는 유사한 애플리케이션으로부터 불러오고 그리고/또는 다른 동일 또는 유사한 애플리케이션으로 내보내는 것을 허가한다. 이러한 특징들은 복잡하고 재생하기 어려운 모양들 또는 외관들이 나중에 다른 이미지들에 대해 재사용 및 적용되는 것을 가능하게 한다.
III. 슬라이딩 영역 동작들
위의 섹션들 및 도면들은 이차원 슬라이더 컨트롤의 슬라이딩 영역 내에 슬라이더 형상들을 이동 가능하게 배치함으로써 슬라이더 형상들과 관련된 연산들을 제어하는 것을 설명하였다. 그러나, 일부 실시예들은 슬라이더 형상들을 이동 가능하게 배치하는 것이 아니라 슬라이딩 영역을 이동 가능하게 배치함으로써 슬라이더 형상들과 관련된 연산들을 제어한다.
도 26은 일부 실시예들의 이차원 슬라이더 컨트롤(470)을 나타낸다. 이 도면은 슬라이딩 영역 동작의 4개의 상이한 스테이지(2605-2620)에서 이차원 슬라이더 컨트롤(470)을 나타낸다. 이차원 슬라이더 컨트롤(470)은 슬라이딩 영역(120) 및 슬라이더 형상들(2630-2645)을 포함한다. 제1 스테이지(2605)에서, 슬라이더 형상들(2630-2645)은 슬라이딩 영역(120) 내에 배치된다. 따라서, 슬라이더 형상들(2630-2645)과 관련된 연산들은 슬라이더 형상들의 위치들에 기초하여 편집되는 이미지(도시되지 않음)에 적용된다.
제2 스테이지(2610)는 슬라이딩 영역 동작의 개시시의 이차원 슬라이더 컨트롤(470)을 나타낸다. 이 스테이지에서, 슬라이딩 영역의 중심이 (예를 들어, 드래그 앤 드롭 동작의 드래그 부분을 수행함으로써) 선택되었다. 슬라이딩 영역(120)의 선택은 슬라이딩 영역(120)의 외측 원을 굵게 표시함으로써 지시된다.
제3 스테이지(2615)는 슬라이딩 영역 동작 동안의 이차원 슬라이더 컨트롤(470)을 나타낸다. 도시된 바와 같이, 슬라이딩 영역(120)은 화살표로 지시되는 바와 같이 이차원 슬라이더 컨트롤(470)의 바닥을 향해 이동 가능하게 배치된다. 그러나, 슬라이더 형상들(2630-2645)은 이동하지 않았고 그들의 위치들에 정지한 상태로 유지된다. 일부 실시예들에서는, 슬라이딩 영역(120)이 이동됨에 따라, 슬라이더 형상들(2630-2645)과 관련된 연산들이 슬라이딩 영역(120)에 대한 그들의 위치들의 변화로 인해 변경된다.
제4 스테이지(2620)는 슬라이딩 영역(120)의 외측 원을 굵게 표시하지 않음으로써 지시되는 바와 같이 슬라이딩 영역 동작이 완료된 후의 이차원 슬라이더 컨트롤(470)을 나타낸다. 이 스테이지에서, 슬라이딩 영역(120)은 이차원 슬라이더 컨트롤(470)의 바닥을 향해 더 이동되어 있다. 도시된 바와 같이, 슬라이더 형상들(2630, 2640)은 더 이상 슬라이딩 영역(120) 내에 있지 않으며, 따라서 그 슬라이더 형상들과 관련된 연산들은 편집되는 이미지에 적용되지 않는다.
도 27은 일부 실시예들의 다른 슬라이딩 영역 동작을 개념적으로 나타낸다. 구체적으로, 도 27은 슬라이더 형상들의 상이한 세트들 사이에 슬라이딩 영역을 이동 가능하게 배치하기 위한 도 26에서 전술한 슬라이딩 영역 동작의 사용을 나타낸다. 이러한 방식으로, 사용자는 편집되는 이미지(도시되지 않음) 상에 슬라이더 형상들의 상이한 세트들에 의해 생성되는 상이한 모양들 또는 외관들을 빠르게 비교, 대조, 혼합 및 매칭시킬 수 있다. 도시된 바와 같이, 도 27은 슬라이딩 영역 동작의 4개의 상이한 스테이지(2705, 2710, 2715, 2720)에서 이차원 슬라이더 컨트롤(470)을 나타낸다. 이차원 슬라이더 컨트롤(470)은 슬라이딩 영역(120) 및 슬라이더 형상들의 3개 세트(2730-2740)를 포함한다.
제1 스테이지(2705)는 임의의 슬라이딩 영역 동작이 개시되기 전의 이차원 슬라이더 컨트롤(470)을 나타낸다. 슬라이더 형상들의 세트들(2730-2740)은 각각 이차원 슬라이더 컨트롤(470)의 좌상, 우상 및 좌하 코너들에 배치된다. 제2 스테이지(2710)는 슬라이딩 영역 동작이 완료된 후의 이차원 슬라이더 컨트롤(470)을 나타낸다. 이 스테이지에서, 슬라이딩 영역(120)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 제1 스테이지(2705)에서의 그의 위치로부터 이차원 슬라이더 컨트롤(470)의 좌상 코너의 슬라이더 형상들의 세트(2730)를 향해 이동 가능하게 배치되었다. 슬라이더 형상들의 세트(2730) 내의 슬라이더 형상들과 관련된 연산들에 의해 생성된 모양 또는 외관이 편집되는 이미지에 적용된다.
제3 스테이지(2715)는 다른 슬라이딩 영역 동작의 완료 후의 이차원 슬라이더 컨트롤(470)을 나타낸다. 도시된 바와 같이, 슬라이딩 영역(120)은 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 제2 스테이지(2710)에서의 그의 위치로부터 이차원 슬라이더 컨트롤(470)의 우상 코너의 슬라이더 형상들의 세트(2735)를 향해 이동 가능하게 배치되었다. 이 시점에서, 슬라이더 형상들의 세트(2735)의 슬라이더 형상들과 관련된 연산들에 의해 생성된 모양 또는 외관이 편집되는 이미지에 적용된다.
제4 스테이지(2720)는 또 다른 슬라이딩 영역 동작의 완료 후의 이차원 슬라이더 컨트롤(470)을 나타낸다. 이 스테이지는 슬라이딩 영역(120)이 (예를 들어, 드래그 앤 드롭 동작을 수행함으로써) 제3 스테이지(2715)에서의 그의 위치로부터 이차원 슬라이더 컨트롤(470)의 좌하 코너의 슬라이더 형상들의 세트(2740)를 향해 이동 가능하게 배치된 것을 나타낸다. 이 스테이지에서, 슬라이더 형상들의 세트(2740) 내의 슬라이더들과 관련된 연산들에 의해 생성된 모양 또는 외관이 편집되는 이미지에 적용된다.
도 28은 도 26 및 27에 도시된 슬라이딩 영역 동작들 또는 유사한 슬라이딩 영역 동작들과 같은, 이차원 슬라이더 컨트롤에 표시된 사용자 선택 가능 슬라이더 형상들과 슬라이딩 영역 사이의 상호작용들에 응답하여 이미지에 대해 컬러 수정 연산들을 수행하기 위한 일부 실시예들의 프로세스(2800)를 나타낸다. 일부 실시예들에서, 프로세스(2800)는 슬라이딩 영역이 이차원 슬라이더 컨트롤의 디스플레이 영역 내에 이동 가능하게 배치되는 동안에 수행된다. 예를 들어, 일부 그러한 실시예들에서, 프로세스(2800)는 슬라이딩 영역이 디스플레이 영역 내에 이동 가능하게 배치되고 있는 동안에 항상(즉, 실시간으로) 수행된다. 다른 그러한 실시예들에서, 프로세스(2800)는 슬라이딩 영역이 디스플레이 영역 내에 이동 가능하게 배치되고 있는 동안에 정해진 거리(예를 들어, 10 픽셀, 5 밀리미터 등)만큼 이동할 때마다 수행된다. 또 다른 실시예들에서, 프로세스(2800)는 슬라이딩 영역의 이동 가능한 배치가 완료될 때(예를 들어, 슬라이딩 영역에 대해 수행되는 드래그 앤 드롭 동작이 완료될 때) 수행된다.
프로세스(2800)는 (2805에서) 슬라이딩 영역 내의 사용자 선택 가능 슬라이더 형상의 위치를 수신함으로써 시작된다. 이어서, 프로세스(2800)는 (2810에서) 디스플레이 영역 내의 사용자 선택 가능 슬라이딩 영역의 위치를 수신한다. 일부 실시예들에서는 슬라이딩 영역의 중심이 슬라이딩 영역의 위치를 나타내도록 정의되는 반면, 다른 실시예들에서는 슬라이딩 영역 내의 다른 포인트가 슬라이딩 영역의 위치를 나타내도록 정의된다.
이어서, 프로세스(2800)는 (2815에서) 사용자 선택 가능 슬라이더 형상과 관련된 컬러 수정 연산들의 세트를 식별한다. 컬러 수정 연산들의 예들은 많은 컬러 수정 연산 중에서 특히 채도 연산, 콘트라스트 연산, 노출 연산, 및 컬러 캐스트 연산을 포함한다. 동작 2815 후에, 프로세스(2800)는 (2820에서) 슬라이딩 영역에 대한 사용자 선택 가능 슬라이더 형상의 위치 변수들을 결정한다. 일부 실시예들에서, 결정되는 위치 변수들은 위의 섹션들에서 설명된 바와 같은 방사상 거리 위치 변수, 각도 위치 변수, x축 위치 변수 및 y축 위치 변수를 포함한다. 다른 실시예들은 다른 위치 변수들도 포함할 수 있다.
이어서, 프로세스(2800)는 (2825에서) 섹션들에서 설명되고 위의 도면들에 도시된 것들과 같은 결정된 위치 변수들에 기초하여 식별된 컬러 수정 연산들을 적용한다. 프로세스(2800)는 (2830에서) 처리할 임의의 슬라이더 형상이 남아 있는지를 결정한다. 일부 실시예들에서 프로세스(2800)는 이차원 슬라이더 컨트롤 내의 모든 슬라이더 형상들을 처리하는 반면, 다른 실시예들에서 프로세스(2800)는 이차원 슬라이더 컨트롤의 슬라이딩 영역 내에 배치된 슬라이더 형상들만을 처리한다. 프로세스(2800)가 처리할 슬라이더 형상이 남은 것으로 결정하는 경우, 프로세스(2800)는 동작 2805로 복귀하여 남은 슬라이더 형상들을 처리한다. 그렇지 않은 경우, 프로세스(2800)는 종료된다.
이 섹션에서 전술한 도면들(예를 들어, 23, 24, 25, 26, 27) 중 다수는 다수의 슬라이더 형상을 포함하는 일부 실시예들의 이차원 슬라이더 컨트롤만을 나타낸다. 이들 도면에는 도시되지 않지만, 이차원 슬라이더 컨트롤 내에 포함된 슬라이더 형상들은 일부 실시예들에서 이차원 슬라이더 컨트롤(470)에 대한 슬라이더 형상(475)의 추가와 유사한 방식으로 대응하는 슬라이더 형상 생성기를 이용하여 추가된다. 다른 실시예들은 핫키, 키스트로크, 키스트로크들의 조합, 풀다운 또는 팝업 메뉴로부터의 옵션의 선택 또는 임의의 다른 적절한 방법을 이용하는 것과 같은 다른 방법들을 통해 슬라이더 형상들을 추가한다.
IV. 예시적인 태블릿 구현
위의 상이한 실시예들 및 예들 중 다수는 이차원 슬라이더 컨트롤의 GUI와 상호작용하는 다양한 방법들을 설명한다. 이들 실시예 중 일부는 터치스크린을 입력 장치로서 사용한다. 구체적으로, 이들 실시예는 터치스크린 입력 장치를 갖는 태블릿 컴퓨팅 장치(예를 들어, 애플의 iPad®)에서 구현될 수 있다. 터치스크린 입력 장치를 이용하여, 사용자는 다수의 선택 동작들을 동시에 수행할 수 있다.
도 29는 그러한 다수의 동시 선택이 이미지에 대해 컬러 수정 연산들을 수행할 수 있게 하는 이차원 슬라이더 컨트롤을 제공하는 미디어 편집 애플리케이션의 태블릿 구현의 일례를 나타낸다. 이 도면은 태블릿 컴퓨팅 장치(2900) 및 태블릿 컴퓨팅 장치(2900)의 디스플레이 스크린 상에 표시되는 GUI(2920)를 나타낸다. 도시된 바와 같이, GUI(2920)는 슬라이더 형상 도구 박스(2925), 이차원 슬라이더 컨트롤(470) 및 관찰 영역(660)을 포함한다. 슬라이더 형상 도구 박스(2925)는 도 4를 참조하여 전술한 슬라이더 형상 생성기들과 유사한 여러 개의 슬라이더 형상 생성기를 포함한다. 이차원 슬라이더 컨트롤(470)은 슬라이딩 영역(120) 및 3개의 슬라이더 형상(2940-2950)을 포함한다. 관찰 영역(660)은 편집되는 이미지 및 이미지에 대한 컬러 수정 연산들의 적용에 의해 생성되는 효과들을 표시하기 위한 것이다.
도 29는 또한 2개의 상이한 스테이지(2905, 2910)에서 GUI(2920)를 나타낸다. 제1 스테이지(2905)는 다수의 슬라이더 형상이 생성된 후의 GUI(2920)를 나타낸다. 이 스테이지에서는 슬라이더 형상 도구 박스(2925) 내의 슬라이더 형상 생성기들로부터 슬라이더 형상들(2940, 2945, 2950)이 동시에 생성되었다. 일부 실시예들에서, 슬라이더 형상들(2940, 2945, 2950)은 디스플레이 스크린(2915) 상에서 대응하는 슬라이더 형상 생성기들 각각을 터치하고 화살표로 지시되는 바와 같이 슬라이딩 영역(120)을 향해 드래깅함으로써 생성되었다.
제2 스테이지(2910)는 슬라이더 형상들(2940-2950)이 제1 스테이지(2905)에서의 슬라이딩 영역(120) 내의 그들의 위치들로부터 동시에 이동 가능하게 배치된 후의 GUI(2900)를 나타낸다. 일부 실시예들에서, 슬라이더 형상들(2940-2950)은 슬라이더 형상들(2940-2950) 각각을 그들의 이전 위치들(즉, 제1 스테이지(2905)에서의 그들의 위치들)에서 터치하고 이들을 이 스테이지에서 도시되는 바와 같은 그들의 현재 위치들로 드래깅함으로써 이동 가능하게 배치된다.
도 29에 도시된 동작들은 다수의 선택 동작이 태블릿 컴퓨팅 장치의 터치스크린 입력 장치를 통해 동시에 수행될 수 있는 방법을 보여준다. 그러나, 통상의 기술자는 그러한 선택 동작들이 동시에 수행될 필요가 없다는 것을 인식할 것이다. 예를 들어, 스테이지들(2905, 2910)에서 수행되는 동작들 중 일부 또는 전부는 중첩되고, 임의의 순서로 순차적으로 수행되고, 그리고/또는 동시에 수행될 수 있다.
전술한 실시예들 중 다수에서, 방사상 거리 위치 변수에 기초하는 슬라이더 형상들의 연산(들)은 슬라이더 형상들이 슬라이딩 영역의 중심에 더 가까이 이동 가능하게 배치됨에 따라 증가하도록 정의된다. 그러나, 이들 실시예 중 일부에서는 그러한 슬라이더 형상들이 다르게 정의될 수 있다. 예를 들어, 그러한 슬라이더 형상을 대략 중심에 배치할 때, 슬라이더 형상과 관련된 연산은 (예를 들어, 편집되는 이미지에) 소량 적용되거나 전혀 적용되지 않으며, 슬라이더 형상을 슬라이딩 영역의 중심으로부터 멀어지게 이동 가능하게 배치하는 것은 이미지에 적용되는 연산의 양을 증가시킨다.
V. 소프트웨어 아키텍처
일부 실시예들에서, 전술한 프로세스들은 컴퓨터 또는 핸드헬드 장치와 같은 특정 기계에서 실행되거나 비일시적인 컴퓨터 판독 가능 매체에 저장된 소프트웨어로서 구현된다. 도 30은 이전 섹션들에서 설명된 것들과 같은 이미지 처리 및/또는 컬러 수정 연산들을 처리하기 위한 일부 실시예들의 애플리케이션(3025)의 소프트웨어 아키텍처를 개념적으로 나타낸다. 일부 실시예들에서 애플리케이션(3025)은 독립형 애플리케이션이거나 다른 애플리케이션(예를 들어, 사진 편집 애플리케이션, 미디어 편집 애플리케이션, 비디오 편집 애플리케이션 등)의 일부인 반면, 다른 실시예들에서 애플리케이션(3025)은 운영 체제의 일부로서 구현된다. 더구나, 일부 실시예들의 애플리케이션(3025)은 클라이언트-서버 솔루션의 일부로서 구현된다. 일부 그러한 실시예들에서, 애플리케이션(3025)은 씬(thin) 클라이언트를 통해 제공된다(즉, 애플리케이션(3025)은 서버에서 실행되는 반면, 사용자는 서버로부터 분리된 기계를 통해 애플리케이션(3025)과 상호작용한다). 다른 그러한 실시예들에서, 애플리케이션(3025)은 씨크(thick) 클라이언트를 통해 제공된다(즉, 애플리케이션(3025)은 서버로부터 클라이언트 기계로 배포되어 클라이언트 기계에서 실행된다).
도시된 바와 같이, 애플리케이션(3025)은 사용자 인터페이스(UI) 상호작용 모듈(3030), 슬라이더 형상 처리 모듈(3035), 위치 모듈(3040), 컬러 수정 모듈(3045), 저장 장치(3050), 이미지 처리 모듈(3055) 및 이미지 디스플레이 모듈(3060)을 포함한다. 도 30은 또한 커서 제어기 드라이버(3010), 키보드 드라이버(3015) 및 디스플레이 드라이버(3020)를 포함하는 운영 체제(3005)를 도시한다.
사용자는 입력 장치들(도시되지 않음)을 통해 사용자 인터페이스와 상호작용할 수 있다. 커서 제어기들(마우스, 트랙볼, 태블릿, 터치패드 등) 및 키보드들과 같은 입력 장치들은 신호들을 커서 제어기 드라이버(3010) 및 키보드 드라이버(3015)로 전송한다. 커서 제어기 드라이버(3010) 및 키보드 드라이버(3015)는 그러한 신호들을 UI 상호작용 모듈(3030)에 제공되는 사용자 입력 데이터로 변환한다.
본원은 동작들 및 기능들의 상이한 세트들을 수행하기 위한 다양한 방법들을 사용자들에게 제공하는 그래픽 사용자 인터페이스를 설명한다. 일부 실시예들에서, 이러한 동작들 및 기능들은 상이한 입력 장치들(예를 들어, 키보드, 트랙패드, 터치패드, 마우스 등)을 통해 사용자들로부터 수신되는 상이한 명령들에 기초하여 수행된다. 예를 들어, 그래픽 사용자 인터페이스 내의 커서를 사용하여 그래픽 사용자 인터페이스 내의 객체들을 제어(예를 들어, 선택, 이동)할 수 있다. 그러나, 일부 실시예들에서, 그래픽 사용자 인터페이스 내의 객체들은 터치 컨트롤과 같은 다른 컨트롤들을 통해서도 제어 또는 조작될 수 있다. 일부 실시예들에서, 터치 컨트롤은 장치의 디스플레이 상의 터치의 존재 및 위치를 검출할 수 있는 입력 장치를 통해 구현된다. 그러한 장치의 일례는 터치 스크린 장치이다. 일부 실시예들에서, 터치 컨트롤을 이용하여, 사용자는 터치 스크린 장치의 디스플레이 상에 표시된 그래픽 사용자 인터페이스와 상호작용함으로써 객체들을 직접 조작할 수 있다. 예를 들어, 사용자는 터치 스크린 장치의 디스플레이 상에서 그래픽 사용자 인터페이스 내의 특정 객체를 간단히 터치(예를 들어, 탭핑)함으로써 그 특정 객체를 선택할 수 있다. 따라서, 일부 실시예들에서는, 터치 컨트롤이 사용될 때, 그래픽 사용자 인터페이스의 객체의 선택을 가능하게 하기 위해 커서가 제공되지 않을 수도 있다. 그러나, 그래픽 사용자 인터페이스 내에 커서가 제공될 때, 터치 컨트롤은 일부 실시예들에서 커서를 제어하는 데 사용될 수 있다.
이어서, UI 상호작용 모듈(3030)은 표시된 사용자 인터페이스 객체들(예컨대, 슬라이더 형상들, 슬라이더 형상 생성기들, 슬라이딩 영역 등)과 관련하여 사용자 입력 데이터를 해석하고, 데이터를 슬라이더 형상 처리 모듈(3035)로 전달한다.
슬라이더 형상 처리 모듈(3035)은 UI 상호작용들을 UI 내의 사용자 그래픽 객체들의 이동으로 해석한다. 이동되는 각각의 슬라이더 형상에 대해, 슬라이더 형상 처리 모듈(3035)은 슬라이더 형상 및 슬라이딩 영역의 위치 정보(예를 들어, x 및 y 좌표들)를 검색하도록 위치 모듈(3040)에 지시하며, 위치 모듈(3040)은 UI 상호작용 모듈(3030)로부터 이를 검색한다.
슬라이더 형상 처리 모듈(3035)은 사용자 입력 데이터와 함께 UI 상호작용 모듈(3030)로부터 수신한 식별 정보(예를 들어, 슬라이더 형상과 관련된 고유 식별자)를 컬러 수정 모듈(3045)로 전송한다. 식별 정보 및 저장 장치(3050)로부터 수신된 정보에 기초하여, 컬러 수정 모듈(3045)은 슬라이더 형상과 관련된 컬러 수정 연산(들)을 식별한다. 컬러 수정 모듈(3045)은 식별된 컬러 수정 연산 정보를 슬라이더 형상 처리 모듈(3035)로 전달한다.
슬라이더 형상 처리 모듈(3035)은 위치 정보 및 컬러 수정 연산 정보를 수신할 때, 수신된 정보를 처리한다. 슬라이더 형상 처리 모듈(3035)은 처리된 정보에 기초하여 이미지에 하나 이상의 컬러 수정 연산을 적용하기 위한 위치 변수들을 결정하고, 결정된 컬러 수정 연산(들)을 이미지에 적용하도록 이미지 처리 모듈(3055)에 지시한다.
이미지 처리 모듈(3055)은 슬라이더 형상 처리 모듈(3035)로부터 명령을 수신하여 이미지에 컬러 수정 연산(들)을 적용하고, 이것은 저장 장치(3050)에 저장된다. 이미지 처리 모듈(3055)은 또한 적용된 컬러 수정 연산(들)을 이미지 디스플레이 모듈(3060)에 알린다. 이미지 디스플레이 모듈(3060)은 UI의 다른 디스플레이 영역에서의 이미지의 표시를 제어한다. 일부 실시예들에서, 이미지 디스플레이 모듈(3060)은 UI 내의 슬라이더 형상들 또는 슬라이딩 영역의 이동들에 응답하여 이미지의 컬러 속성들의 변경들의 표시를 처리한다. 이미지 디스플레이 모듈(3060)은 디스플레이 정보를 디스플레이 드라이버(3020)로 전달하며, 이 디스플레이 드라이버는 모니터(CRT, LCD 등)와 같은 출력 장치(도시되지 않음) 상의 이미지(및 UI의 나머지)의 실제 표시를 처리한다.
특징들 중 다수가 하나의 모듈(예를 들어, 슬라이더 형상 처리 모듈(3035))에 의해 수행되는 것으로 설명되었지만, 통상의 기술자는 기능들이 다수의 모듈로 분할될 수 있고 하나의 특징의 수행이 다수의 모듈을 필요로 할 수도 있다는 것을 인식할 것이다.
VI. 컴퓨터 시스템
전술한 특징들 및 애플리케이션들 중 다수는 (컴퓨터 판독 가능 매체로도 참조되는) 컴퓨터 판독 가능 저장 매체에 기록된 명령어들의 세트로서 특정되는 소프트웨어 프로세스들로서 구현된다. 이러한 명령어들이 하나 이상의 처리 유닛(들)(예를 들어, 하나 이상의 프로세서들, 프로세서들의 코어들 또는 기타 처리 유닛들)에 의해 실행될 때, 이들은 처리 유닛(들)으로 하여금 명령어들에서 지시되는 액션들을 수행하게 한다. 컴퓨터 판독 가능 매체들의 예들은 CD-ROM, 플래시 드라이브, RAM 칩, 하드 드라이브, EPROM 등을 포함하지만 이에 한정되지 않는다. 컴퓨터 판독 가능 매체들은 무선으로 또는 유선 접속들을 통해 전달되는 반송파들 및 전자 신호들을 포함하지 않는다.
본 명세서에서, "소프트웨어"라는 용어는 판독 전용 메모리에 상주하는 펌웨어 또는 프로세서에 의한 처리를 위해 메모리 내로 판독될 수 있는 자기 저장 장치에 저장된 애플리케이션들을 포함하는 것을 의미한다. 또한, 일부 실시예들에서는 다수의 소프트웨어 발명이 별개의 소프트웨어 발명들을 유지하면서 더 큰 프로그램의 하위 요소들로서 구현될 수 있다. 일부 실시예들에서는 다수의 소프트웨어 발명이 개별 프로그램들로서 구현될 수도 있다. 마지막으로, 본 명세서에서 설명되는 소프트웨어 발명을 함께 구현하는 개별 프로그램들의 임의 조합은 본 발명의 범위 내에 있다. 일부 실시예들에서, 소프트웨어 프로그램들은 하나 이상의 전자 시스템에서 동작하도록 설치될 때 소프트웨어 프로그램들의 동작들을 실행 및 수행하는 하나 이상의 특정 기계 구현을 정의한다.
도 31은 본 발명의 일부 실시예들을 구현하는 전자 시스템(3100)을 개념적으로 나타낸다. 전자 시스템(3100)은 컴퓨터, 전화, PDA 또는 임의의 다른 유형의 전자 장치일 수 있다. 그러한 전자 시스템은 다양한 타입의 컴퓨터 판독 가능 매체들 및 다양한 다른 타입의 컴퓨터 판독 가능 매체들에 대한 인터페이스들을 포함한다. 전자 시스템(3100)은 버스(3105), 처리 유닛(들)(3110), 그래픽 처리 유닛(GPU)(3120), 시스템 메모리(3125), 판독 전용 메모리(3130), 영구 저장 장치(3135), 입력 장치들(3140) 및 출력 장치들(3145)을 포함한다.
버스(3105)는 전자 시스템(3100)의 다수의 내부 장치를 통신 가능하게 접속하는 모든 시스템, 주변 장치 및 칩셋 버스들을 집합적으로 나타낸다. 예를 들어, 버스(3105)는 처리 유닛(들)(3110)을 판독 전용 메모리(3130), GPU(3120), 시스템 메모리(3125) 및 영구 저장 장치(3135)와 통신 가능하게 접속시킨다.
이러한 다양한 메모리 유닛들로부터, 처리 유닛(들)(3110)은 본 발명의 프로세스들을 실행하기 위하여 실행할 명령어들 및 처리할 데이터를 검색한다. 처리 유닛(들)은 상이한 실시예들에서 단일 프로세서 또는 다중 코어 프로세서일 수 있다. 일부 명령어들은 GPU(3120)에 전달되어 실행된다. GPU(3120)는 다양한 계산들을 덜어주거나 처리 유닛(들)(3110)에 의해 제공되는 이미지 처리를 보완할 수 있다. 일부 실시예들에서, 그러한 기능은 코어이미지(CoreImage)의 커널 쉐이딩 언어를 이용하여 제공될 수 있다.
판독 전용 메모리(ROM)(3130)는 전자 시스템의 처리 유닛(들)(3110) 및 다른 모듈들에 의해 요구되는 정적 데이터 및 명령어들을 저장한다. 반면, 영구 저장 장치(3135)는 판독 및 기록 메모리 장치이다. 이 장치는 전자 시스템(3100)이 오프될 때에도 명령어들 및 데이터를 저장하는 비휘발성 메모리 유닛이다. 본 발명의 일부 실시예들은 (자기 또는 광 디스크 및 그에 대응하는 디스크 드라이브와 같은) 대용량 저장 장치를 영구 저장 장치(3135)로서 사용한다.
다른 실시예들은 (예를 들어, 플로피 디스크, 플래시 드라이브 또는 ZIP® 디스크 및 그에 대응하는 디스크 드라이브와 같은) 이동식 저장 장치를 영구 저장 장치로서 사용한다. 영구 저장 장치(3135)와 같이, 시스템 메모리(3125)는 판독 및 기록 메모리 장치이다. 그러나, 저장 장치(3135)와 달리, 시스템 메모리는 랜덤 액세스 메모리와 같은 휘발성 판독 및 기록 메모리이다. 시스템 메모리는 프로세서가 실행 시간에 필요로 하는 명령어들 및 데이터의 일부를 저장한다. 일부 실시예들에서, 본 발명의 프로세스들은 시스템 메모리(3125), 영구 저장 장치(3135) 및/또는 판독 전용 메모리(3130)에 저장된다. 예를 들어, 다양한 메모리 유닛들은 일부 실시예들에 따라 멀티미디어 아이템들을 처리하기 위한 명령어들을 포함한다. 이러한 다양한 메모리 유닛들로부터, 처리 유닛(들)(3110)은 일부 실시예들의 프로세스들을 실행하기 위해 실행할 명령어들 및 처리할 데이터를 검색한다.
버스(3105)는 또한 입력 및 출력 장치들(3140, 3145)에 접속한다. 입력 장치들은 사용자로 하여금 정보를 통신하고 전자 시스템에 대한 명령들을 선택할 수 있게 한다. 입력 장치들(3140)은 영숫자 키보드 및 포인팅 장치("커서 제어 장치"라고도 함)를 포함한다. 출력 장치들(3145)은 전자 시스템에 의해 생성된 이미지들을 표시한다. 출력 장치들은 프린터들 및 음극선 관(CRT) 또는 액정 디스플레이(LCD)와 같은 디스플레이 장치들을 포함한다. 일부 실시예들은 입력 및 출력 장치들 둘 다로서 기능하는 터치스크린과 같은 장치들을 포함한다.
마지막으로, 도 31에 도시된 바와 같이, 버스(3105)는 또한 네트워크 어댑터(도시되지 않음)를 통해 전자 시스템(3100)을 네트워크(3165)에 결합한다. 이러한 방식으로, 컴퓨터는 (근거리 네트워크("LAN"), 광역 네트워크("WAN") 또는 인트라넷과 같은) 컴퓨터들의 네트워크, 또는 인터넷과 같은 네트워크들의 네트워크의 요소일 수 있다. 전자 시스템(3100)의 임의의 또는 모든 컴포넌트들은 본 발명과 관련하여 사용될 수 있다.
일부 실시예들은 (대안으로서 컴퓨터 판독 가능 저장 매체, 기계 판독 가능 매체 또는 기계 판독 가능 저장 매체로서 참조되는) 기계 판독 가능 또는 컴퓨터 판독 가능 매체 내의 컴퓨터 프로그램 명령어들을 저장하는 마이크로프로세서, 저장 장치 및 메모리와 같은 전자 컴포넌트들을 포함한다. 그러한 컴퓨터 판독 가능 매체들의 일부 예들은 RAM, ROM, 판독 전용 컴팩트 디스크(CD-ROM), 기록 가능 컴팩트 디스크(CD-R), 재기록 가능 컴팩트 디스크(CD-RW), 판독 전용 디지털 다기능 디스크(예를 들어, DVD-ROM, 이층 DVD-ROM), 다양한 기록 가능/재기록 가능 DVD(예를 들어, DVD-RAM, DVD-RW, DVD+RW 등), 플래시 메모리(예를 들어, SD 카드, 미니 SD 카드, 마이크로 SD 카드 등), 자기 및/또는 반도체(solid state) 하드 드라이브, 판독 전용 및 기록 가능 Blu-Ray® 디스크, 초고밀도 광 디스크, 임의의 다른 광학 또는 자기 매체 및 플로피 디스크를 포함한다. 컴퓨터 판독 가능 매체들은 적어도 하나의 처리 유닛에 의해 실행될 수 있고 다양한 동작들을 수행하기 위한 명령어들의 세트들을 포함하는 컴퓨터 프로그램을 저장할 수 있다. 컴퓨터 프로그램들 또는 컴퓨터 코드의 예들은 컴파일러에 의해 생성되는 것과 같은 기계 코드, 및 인터프리터를 이용하여 컴퓨터, 전자 컴포넌트 또는 마이크로프로세서에 의해 실행되는 상위 레벨 코드를 포함하는 파일들을 포함한다.
위의 설명은 소프트웨어를 실행하는 마이크로프로세서 또는 다중 코어 프로세서들을 주로 참조하지만, 일부 실시예들은 주문형 집적 회로(ASIC) 또는 필드 프로그래머블 게이트 어레이(FPGA)와 같은 하나 이상의 집적 회로에 의해 수행된다. 일부 실시예들에서, 그러한 집적 회로들은 회로 자체에 저장된 명령어들을 실행한다.
본 명세서 및 본원의 임의의 청구항들에서 사용되는 바와 같이, "컴퓨터", "서버", "프로세서" 및 "메모리"라는 용어들 모두는 전자 또는 다른 기술적 장치들을 지칭한다. 이러한 용어들은 사람들 또는 사람들의 그룹들을 배제한다. 본 명세서의 목적들을 위해, 디스플레이 또는 표시라는 용어는 전자 장치 상의 표시를 의미한다. 본 명세서 및 본원의 임의의 청구항들에서 사용되는 바와 같이, "컴퓨터 판독 가능 매체" 및 "컴퓨터 판독 가능 매체들"이라는 용어는 컴퓨터에 의해 판독될 수 있는 형태로 정보를 저장하는 유형의 물리적 물체들로 완전히 제한된다. 이러한 용어들은 임의의 무선 신호, 유선 다운로드 신호 및 임의의 다른 일시적인 신호를 배제한다.
본 발명은 다수의 특정 상세를 참조하여 설명되었지만, 이 분야의 통상의 기술자는 본 발명이 본 발명의 사상을 벗어나지 않는 다른 특정 형태들로 구현될 수 있다는 것을 인식할 것이다. 게다가, (도 7, 15, 17 및 28을 포함하는) 다수의 도면이 프로세스들을 개념적으로 도시한다. 이러한 프로세스들의 특정 동작들은 도시되고 설명된 바로 그 순서로 수행되지 않을 수도 있다. 특정 동작들은 동작들의 하나의 연속적인 시리즈로 수행되지 않을 수 있으며, 상이한 특정 동작들이 상이한 실시예들에서 수행될 수 있다. 더구나, 프로세스는 여러 개의 서브-프로세스를 이용하여 또는 더 큰 매크로 프로세스의 일부로서 구현될 수 있다.

Claims (25)

  1. 애플리케이션을 제어하기 위한 그래픽 사용자 인터페이스(GUI)를 표시하는 디스플레이 스크린
    을 포함하고,
    상기 GUI는,
    복수의 값을 정의하기 위한 연속 이차원 슬라이딩 영역;
    상기 슬라이딩 영역 내에서 이동하기 위한 복수의 슬라이더 - 각각의 슬라이더는 상기 애플리케이션의 하나 이상의 연산을 제어하기 위한 파라미터와 관련되고, 각각의 슬라이더에 대한 상기 슬라이딩 영역 내의 상이한 위치들은 상기 슬라이더와 관련된 상기 파라미터에 대한 상이한 값들을 특정함 - ; 및
    상기 슬라이딩 영역에 상기 복수의 슬라이더를 추가하기 위한 복수의 사용자 인터페이스(UI) 아이템 - 상기 슬라이더들 각각은, 상기 복수의 UI 아이템에서 하나의 UI 아이템을 선택하고 상기 UI 아이템을 상기 슬라이딩 영역 내로 드래깅함으로써 상기 슬라이딩 영역에 추가됨 -
    을 포함하는,
    장치.
  2. 삭제
  3. 제1항에 있어서,
    상기 GUI는 상기 슬라이딩 영역을 표시하기 위한 디스플레이 영역을 더 포함하는 장치.
  4. 제3항에 있어서,
    상기 복수의 UI 아이템은 상기 디스플레이 영역 내에 표시되는 장치.
  5. 제3항에 있어서,
    상기 디스플레이 영역은 제1 디스플레이 영역이고, 상기 복수의 UI 아이템은 상기 제1 디스플레이 영역에 인접한 제2 디스플레이 영역에 표시되는 장치.
  6. 이미지에 이미지 처리 연산들을 적용하기 위한 미디어 편집 애플리케이션용 그래픽 사용자 인터페이스(GUI)를 제공하는 방법으로서,
    연속 이차원 슬라이딩 영역을 제공하는 단계;
    상기 슬라이딩 영역 내에 이동 가능하게 배치하기 위한 복수의 슬라이더를 제공하는 단계 - 슬라이더를 이동 가능하게 배치하는 것은 이미지 처리 연산이 상기 슬라이딩 영역 내의 상기 슬라이더의 위치에 기초하여 상기 이미지에 적용되게 함 - ; 및
    복수의 사용자 선택 가능 UI 아이템을 제공하는 단계 - 상기 사용자 선택 가능 UI 아이템들 중 하나가 선택되어 상기 슬라이딩 영역 내로 드래깅될 때, 상기 슬라이딩 영역에 슬라이더가 추가됨 -
    를 포함하는
    방법.
  7. 제6항에 있어서,
    선택 가능 UI 아이템들의 세트가 상기 슬라이더의 상기 이미지 처리 연산이 적용될 상기 이미지 내의 픽셀들의 세트를 특정하고, 상기 픽셀들의 세트는 휘도 값들의 특정 범위 내에 속하는 휘도 값들을 갖는, 방법.
  8. 삭제
  9. 제6항에 있어서,
    상기 이미지를 표시하고, 상기 이미지에 적용되는 상기 이미지 처리 연산들의 효과들을 표시하기 위한 디스플레이 영역을 제공하는 단계를 더 포함하는 방법.
  10. 적어도 하나의 처리 유닛에 의해 실행될 때, 슬라이더 컨트롤을 이용하여 이미지에 컬러 수정 연산들을 적용하는 프로그램을 저장하는 비일시적 머신 판독 가능 매체로서,
    상기 슬라이더 컨트롤은 슬라이딩 영역, 및 컬러 수정 연산을 각각 제어하는 복수의 슬라이더를 포함하고,
    상기 프로그램은,
    상기 복수의 슬라이더 중, 상기 슬라이딩 영역 내에 이동 가능하게 배치될 때에 제1 컬러 수정 연산을 제어하는 제1 슬라이더를 제공하기 위한 명령어들의 세트;
    상기 복수의 슬라이더 중, 상기 슬라이딩 영역 내에 이동 가능하게 배치될 때에 제2 컬러 수정 연산을 제어하는 제2 슬라이더를 제공하기 위한 명령어들의 세트;
    상기 제1 슬라이더 및 상기 제2 슬라이더를 슬라이더들의 그룹으로 그룹핑하기 위한 명령어들의 세트;
    상기 슬라이더들의 그룹을 상기 슬라이딩 영역 내에 이동 가능하게 배치하기 위한 명령어들의 세트;
    상기 슬라이더들의 그룹의 상기 배치에 응답하여, 상기 슬라이딩 영역 내의 상기 제1 및 제2 슬라이더들의 대응하는 위치들에 기초하여 상기 제1 및 제2 슬라이더들의 제1 및 제2 컬러 수정 연산들을 결정하기 위한 명령어들의 세트; 및
    상기 결정된 제1 및 제2 컬러 수정 연산들을 상기 이미지에 적용하기 위한 명령어들의 세트
    를 포함하는
    비일시적 머신 판독 가능 매체.
  11. 제10항에 있어서,
    상기 제1 및 제2 컬러 수정 연산들은 상기 슬라이딩 영역의 중심으로부터 상기 슬라이딩 영역 내의 상기 제1 및 제2 슬라이더들의 위치들까지의 방사상 거리들에 또한 기초하는, 비일시적 머신 판독 가능 매체.
  12. 제10항에 있어서,
    각각의 컬러 수정 연산은, 상기 슬라이딩 영역의 중심으로부터 상기 슬라이딩 영역 내의 대응하는 슬라이더의 제1 위치까지의 제1 선 및 상기 슬라이딩 영역의 중심으로부터 상기 슬라이딩 영역 내의 상기 대응하는 슬라이더의 제2 위치까지의 제2 선에 의해 형성되는 각도에 또한 기초하는, 비일시적 머신 판독 가능 매체.
  13. 삭제
  14. 삭제
  15. 제10항에 있어서,
    상기 프로그램은, 상기 슬라이딩 영역 내의 상기 제1 및 제2 슬라이더들의 위치들을 나타내는 제3 슬라이더를 생성하기 위한 명령어들의 세트를 더 포함하는 비일시적 머신 판독 가능 매체.
  16. 제15항에 있어서,
    상기 프로그램은,
    상기 제3 슬라이더를 상기 슬라이딩 영역 내에 이동 가능하게 배치하기 위한 명령어들의 세트;
    상기 제3 슬라이더의 상기 배치에 응답하여, 상기 슬라이딩 영역 내의 상기 제3 슬라이더의 위치에 기초하여 상기 제1 및 제2 컬러 수정 연산들을 결정하기 위한 명령어들의 세트; 및
    상기 결정된 제1 및 제2 컬러 수정 연산들을 상기 이미지에 적용하기 위한 명령어들의 세트
    를 더 포함하는 비일시적 머신 판독 가능 매체.
  17. 제10항에 있어서,
    상기 컬러 수정 연산은 채도 연산(saturation operation), 콘트라스트 연산(contrast operation), 명도 연산(brightness operation) 및 컬러 캐스트 연산(color cast operation) 중 하나인 비일시적 머신 판독 가능 매체.
  18. 슬라이더 컨트롤을 이용하여 이미지에 컬러 수정 연산들을 적용하는 방법으로서,
    상기 슬라이더 컨트롤은 슬라이딩 영역, 및 컬러 수정 연산을 각각 제어하는 슬라이더들의 세트를 포함하고,
    상기 방법은,
    상기 슬라이딩 영역을 상기 슬라이더 컨트롤 내에 이동 가능하게 배치하는 단계;
    상기 슬라이딩 영역의 상기 배치에 응답하여, 상기 슬라이딩 영역의 위치에 기초하여 상기 슬라이더들의 세트 내의 각각의 슬라이더의 컬러 수정 연산을 결정하는 단계; 및
    상기 슬라이더들의 세트 내의 각각의 슬라이더의 상기 결정된 컬러 수정 연산을 상기 이미지에 적용하는 단계
    를 포함하는 방법.
  19. 제18항에 있어서,
    상기 슬라이더들의 세트 내의 적어도 하나의 슬라이더의 컬러 수정 연산은 상기 슬라이딩 영역의 중심으로부터 상기 슬라이더의 위치까지의 방사상 거리에 또한 기초하는 방법.
  20. 제18항에 있어서,
    상기 슬라이더들의 세트 내의 적어도 하나의 슬라이더의 컬러 수정 연산은, 상기 슬라이딩 영역의 중심으로부터 상기 슬라이딩 영역의 위치까지의 제1 선 및 상기 슬라이딩 영역의 중심으로부터 상기 슬라이딩 영역 내의 정의된 위치까지의 제2 선에 의해 형성되는 각도에 또한 기초하는 방법.
  21. 제6항에 있어서,
    상기 복수의 슬라이더는, 상기 슬라이더가 상기 슬라이딩 영역 내의 상기 위치에 이동 가능하게 배치되기 전 및 그 후에, 상기 슬라이딩 영역 내에 표시되는, 방법.
  22. 제7항에 있어서,
    상기 선택 가능 UI 아이템들의 세트는, 상기 GUI 안에 표시된 메뉴 안에 포함되는, 방법.
  23. 삭제
  24. 삭제
  25. 삭제
KR1020137006069A 2010-08-09 2011-07-29 이차원 슬라이더 컨트롤 KR101470264B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/853,275 2010-08-09
US12/853,275 US8468465B2 (en) 2010-08-09 2010-08-09 Two-dimensional slider control
PCT/US2011/046040 WO2012021313A1 (en) 2010-08-09 2011-07-29 Two-dimensional slider control

Publications (2)

Publication Number Publication Date
KR20130073942A KR20130073942A (ko) 2013-07-03
KR101470264B1 true KR101470264B1 (ko) 2014-12-05

Family

ID=44543796

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137006069A KR101470264B1 (ko) 2010-08-09 2011-07-29 이차원 슬라이더 컨트롤

Country Status (6)

Country Link
US (2) US8468465B2 (ko)
EP (1) EP2603846A1 (ko)
KR (1) KR101470264B1 (ko)
CN (1) CN103069373B (ko)
CA (1) CA2806577A1 (ko)
WO (1) WO2012021313A1 (ko)

Families Citing this family (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9367205B2 (en) 2010-02-19 2016-06-14 Microsoft Technolgoy Licensing, Llc Radial menus with bezel gestures
US8468465B2 (en) 2010-08-09 2013-06-18 Apple Inc. Two-dimensional slider control
US20120272171A1 (en) * 2011-04-21 2012-10-25 Panasonic Corporation Apparatus, Method and Computer-Implemented Program for Editable Categorization
US9086794B2 (en) * 2011-07-14 2015-07-21 Microsoft Technology Licensing, Llc Determining gestures on context based menus
KR20130083308A (ko) * 2012-01-12 2013-07-22 삼성전자주식회사 디스플레이 장치 및 그 디스플레이 방법
US8806339B2 (en) 2012-02-06 2014-08-12 Apple Inc. User interface control for media editing application
US9250768B2 (en) * 2012-02-13 2016-02-02 Samsung Electronics Co., Ltd. Tablet having user interface
US9202433B2 (en) 2012-03-06 2015-12-01 Apple Inc. Multi operation slider
US9299168B2 (en) 2012-03-06 2016-03-29 Apple Inc. Context aware user interface for image editing
US20130238747A1 (en) 2012-03-06 2013-09-12 Apple Inc. Image beaming for a media editing application
CN104221359B (zh) * 2012-03-06 2018-01-12 苹果公司 用于色彩片段的色彩调节器
US9131192B2 (en) 2012-03-06 2015-09-08 Apple Inc. Unified slider control for modifying multiple image properties
JP6047587B2 (ja) * 2012-03-06 2016-12-21 アップル インコーポレイテッド メディア編集アプリケーション用の扇形編出ユーザインタフェースコントロール
US9569078B2 (en) 2012-03-06 2017-02-14 Apple Inc. User interface tools for cropping and straightening image
DE102012004327A1 (de) * 2012-03-07 2013-09-12 Mobotix Ag Verfahren für die Parameterveränderung parametrierbarer Funktionen mittels Datenverarbeitungsgeräten
KR101413286B1 (ko) * 2012-05-02 2014-07-01 주식회사 팬택 전자 장치 및 이를 위한 잠금 해제 장치와 방법
US9361855B2 (en) * 2012-05-14 2016-06-07 Adobe Systems Incorporated Computer-implemented methods and systems for a color generator
US9594492B1 (en) * 2012-08-23 2017-03-14 Allscripts Software, Llc Macro/micro control user interface element
JP2014071733A (ja) * 2012-09-28 2014-04-21 Toshiba Corp 情報処理装置および動作制御方法
CN103077696B (zh) * 2013-01-15 2015-08-12 Opera软件股份公司 用于调节显示屏亮度的方法和设备以及显示系统
KR20140121711A (ko) * 2013-04-08 2014-10-16 삼성전자주식회사 색 추출 기반의 영상 처리 방법, 상기 방법을 기록한 컴퓨터 판독 가능 저장매체 및 디지털 영상 장치
KR102183448B1 (ko) * 2013-04-26 2020-11-26 삼성전자주식회사 사용자 단말 장치 및 그 디스플레이 방법
USD755240S1 (en) 2013-06-09 2016-05-03 Apple Inc. Display screen or portion thereof with graphical user interface
WO2014210052A1 (en) * 2013-06-24 2014-12-31 Raminder Singh Computer enabled enterprise business monitoring system
US20150113470A1 (en) * 2013-10-18 2015-04-23 Cisco Technology, Inc. Adjustable progressive disclosure of structured data
US9582184B2 (en) * 2013-11-04 2017-02-28 Keysight Technologies, Inc. Touch screen control for adjusting a numerical value
USD758433S1 (en) * 2014-02-11 2016-06-07 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
US9665952B2 (en) * 2014-02-19 2017-05-30 Beijing Lenovo Software Ltd. Information processing method and electronic device
US9442646B2 (en) * 2014-03-26 2016-09-13 Onshape Inc. Numeric input control through a non-linear slider
US10782864B1 (en) * 2014-04-04 2020-09-22 Sprint Communications Company L.P. Two-axis slider graphical user interface system and method
US10535082B1 (en) 2014-04-22 2020-01-14 Sprint Communications Company L.P. Hybrid selection of target for advertisement campaign
US20150346959A1 (en) * 2014-05-28 2015-12-03 Facebook, Inc. Systems and methods for providing responses to and drawings for media content
US10217438B2 (en) * 2014-05-30 2019-02-26 Apple Inc. User interface and method for directly setting display white point
USD771112S1 (en) * 2014-06-01 2016-11-08 Apple Inc. Display screen or portion thereof with graphical user interface
US9323996B2 (en) * 2014-06-01 2016-04-26 Apple Inc. Controlling multiple photographic adjustments with a single control
USD764511S1 (en) * 2014-06-30 2016-08-23 Samsung Electronics Co., Ltd. Display screen or portion thereof with animated graphical user interface
US9785323B2 (en) 2014-07-23 2017-10-10 Adobe Systems Incorporated Touch-based user interface control tiles
USD753696S1 (en) 2014-09-01 2016-04-12 Apple Inc. Display screen or portion thereof with graphical user interface
USD752623S1 (en) 2014-09-01 2016-03-29 Apple Inc. Display screen or portion thereof with graphical user interface
US20160092041A1 (en) * 2014-09-29 2016-03-31 Madesolid, Inc. System and method to facilitate material selection for a three dimensional printing object
JP1525112S (ko) * 2014-11-14 2015-06-01
USD786269S1 (en) 2014-11-24 2017-05-09 General Electric Company Display screen or portion thereof with transitional icon
FR3030092B1 (fr) * 2014-12-12 2018-01-05 Thales Procede de representation tridimensionnelle d'une scene
CN105320424B (zh) * 2014-12-16 2019-01-29 维沃移动通信有限公司 一种移动终端的控制方法及移动终端
US20160224220A1 (en) * 2015-02-04 2016-08-04 Wipro Limited System and method for navigating between user interface screens
USD795886S1 (en) * 2015-03-09 2017-08-29 Uber Technologies, Inc. Display screen with graphical user interface
USD772911S1 (en) * 2015-04-29 2016-11-29 Adp, Llc Display screen with graphical user interface
USD775657S1 (en) * 2015-04-30 2017-01-03 Brillio LLC Display screen with animated graphical user interface
USD795917S1 (en) 2015-05-17 2017-08-29 Google Inc. Display screen with an animated graphical user interface
USD760746S1 (en) 2015-06-04 2016-07-05 Apple Inc. Display screen or portion thereof with animated graphical user interface
USD812076S1 (en) * 2015-06-14 2018-03-06 Google Llc Display screen with graphical user interface for monitoring remote video camera
USD803241S1 (en) 2015-06-14 2017-11-21 Google Inc. Display screen with animated graphical user interface for an alert screen
US9361011B1 (en) 2015-06-14 2016-06-07 Google Inc. Methods and systems for presenting multiple live video feeds in a user interface
US10133443B2 (en) 2015-06-14 2018-11-20 Google Llc Systems and methods for smart home automation using a multifunction status and entry point icon
CN106325647B (zh) * 2015-06-17 2019-10-18 华为技术有限公司 一种ui调整方法、装置和移动终端
AT517687B1 (de) * 2015-09-23 2017-04-15 Omicron Electronics Gmbh Prüfvorrichtung und Verfahren zum Steuern einer Prüfvorrichtung
CN105338695A (zh) * 2015-10-29 2016-02-17 苏州美达瑞电子有限公司 一种基于触控屏的自动化插座灯
USD798171S1 (en) 2015-12-08 2017-09-26 Exfo Inc. Module for use in a test instrument
CN107037901A (zh) * 2016-02-04 2017-08-11 中兴通讯股份有限公司 一种图像生成方法、终端和图形用户界面
US10203860B2 (en) 2016-03-18 2019-02-12 Ebay Inc. Graphical user interface element adjustment
JP6390657B2 (ja) * 2016-04-07 2018-09-19 トヨタ自動車株式会社 車両用表示装置
CN105912258B (zh) * 2016-04-13 2019-12-13 北京小米移动软件有限公司 操作处理方法及装置
USD819648S1 (en) * 2016-05-19 2018-06-05 Google Llc Display panel with graphical user interface
USD819668S1 (en) * 2016-05-19 2018-06-05 Google Llc Display panel with animated graphical user interface
USD819667S1 (en) * 2016-05-19 2018-06-05 Google Llc Display panel with animated graphical user interface
US9716825B1 (en) 2016-06-12 2017-07-25 Apple Inc. User interface for camera effects
CN106201267A (zh) * 2016-07-09 2016-12-07 王静 一种设置多参数的方法
USD882583S1 (en) 2016-07-12 2020-04-28 Google Llc Display screen with graphical user interface
US10170080B2 (en) 2016-09-06 2019-01-01 Apple Inc. Electronic device having ancillary display with color control
US10386999B2 (en) 2016-10-26 2019-08-20 Google Llc Timeline-video relationship presentation for alert events
US11238290B2 (en) 2016-10-26 2022-02-01 Google Llc Timeline-video relationship processing for alert events
USD843398S1 (en) 2016-10-26 2019-03-19 Google Llc Display screen with graphical user interface for a timeline-video relationship presentation for alert events
US10819921B2 (en) 2017-05-25 2020-10-27 Google Llc Camera assembly having a single-piece cover element
US10972685B2 (en) 2017-05-25 2021-04-06 Google Llc Video camera assembly having an IR reflector
US10352496B2 (en) 2017-05-25 2019-07-16 Google Llc Stand assembly for an electronic device providing multiple degrees of freedom and built-in cables
DK180859B1 (en) 2017-06-04 2022-05-23 Apple Inc USER INTERFACE CAMERA EFFECTS
USD828378S1 (en) * 2017-06-19 2018-09-11 Ricoh Company, Ltd. Display screen with graphical user interface
USD875751S1 (en) * 2017-08-22 2020-02-18 Samsung Electronics Co., Ltd. Display screen or portion thereof with transitional graphical user interface
USD843442S1 (en) 2017-09-10 2019-03-19 Apple Inc. Type font
CN108319490B (zh) 2018-03-01 2019-04-05 网易(杭州)网络有限公司 数值确定方法、数值确定装置、电子设备及存储介质
US11722764B2 (en) 2018-05-07 2023-08-08 Apple Inc. Creative camera
CN108874899B (zh) * 2018-05-23 2022-02-18 网易乐得科技有限公司 数据处理方法及装置、介质和计算设备
JP1658238S (ko) * 2018-06-08 2020-04-27
KR102106509B1 (ko) * 2018-07-31 2020-05-04 삼성중공업 주식회사 3d 모델의 공간 클리핑 설정 장치 및 방법
JP2020042370A (ja) * 2018-09-06 2020-03-19 アイシン精機株式会社 表示制御装置
US11770601B2 (en) 2019-05-06 2023-09-26 Apple Inc. User interfaces for capturing and managing visual media
US11128792B2 (en) 2018-09-28 2021-09-21 Apple Inc. Capturing and displaying images with multiple focal planes
CN109542284B (zh) * 2018-11-15 2022-09-06 上海联影医疗科技股份有限公司 一种图像显示参数调节方法、装置、终端及存储介质
CN110046008B (zh) * 2018-11-20 2021-11-23 创新先进技术有限公司 一种关联控件交互方法和装置
USD902221S1 (en) 2019-02-01 2020-11-17 Apple Inc. Electronic device with animated graphical user interface
USD900871S1 (en) 2019-02-04 2020-11-03 Apple Inc. Electronic device with animated graphical user interface
US11706521B2 (en) 2019-05-06 2023-07-18 Apple Inc. User interfaces for capturing and managing visual media
CN111130995B (zh) * 2019-12-16 2021-08-10 维沃移动通信有限公司 图像控制方法、电子设备及存储介质
DE102020203710A1 (de) 2020-03-23 2021-09-23 Lenze Se Verfahren zum Einstellen eines Parameterwerts eines Lagereglers und eines Parameterwerts eines Drehzahlreglers und elektrisches Antriebssystem
AU2021202282B2 (en) * 2020-04-21 2022-04-07 Canva Pty Ltd Systems and methods for applying effects to design elements
US20220101404A1 (en) * 2020-09-28 2022-03-31 Snap Inc. Selecting color values for augmented reality-based makeup
USD980861S1 (en) * 2020-12-24 2023-03-14 Samsung Electronics Co., Ltd. Display screen or portion thereof with transitional graphical user interface
US11778339B2 (en) 2021-04-30 2023-10-03 Apple Inc. User interfaces for altering visual media
US20220382440A1 (en) * 2021-06-01 2022-12-01 Apple Inc. User interfaces for managing media styles
CN113110786B (zh) * 2021-06-15 2021-09-03 南京统信软件技术有限公司 一种页面滑动控制方法及移动终端
US20230298234A1 (en) * 2022-02-03 2023-09-21 Home Depot Product Authority, Llc Digital image surface editing with user-selected color
USD1023052S1 (en) * 2022-07-27 2024-04-16 Inuit, Inc. Display screen or portion thereof with transitional graphical user interface
US20240036719A1 (en) * 2022-07-29 2024-02-01 GE Precision Healthcare LLC Method and system for multi-range slider user interface control of medical images

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6348936B1 (en) * 1998-05-28 2002-02-19 Sun Microsystems, Inc. Method and apparatus for graphical selection of data
KR20090023928A (ko) * 2007-09-03 2009-03-06 엘지전자 주식회사 통신 단말기 및 이것의 동작 제어 방법

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6362829B1 (en) 1996-03-07 2002-03-26 Agfa Corporation Method for modifying a digital image
US6847373B1 (en) 1999-04-16 2005-01-25 Avid Technology, Inc. Natural color matching in a video editing system
US6850259B1 (en) * 2000-01-19 2005-02-01 Xerox Corporation Systems and methods for providing original document orientation, tone reproduction curves and task specific user instructions based on displayed portions of a graphical user interface
GB2363018B (en) 2000-04-07 2004-08-18 Discreet Logic Inc Processing image data
US7266241B2 (en) * 2000-04-07 2007-09-04 Avid Technology, Inc. Secondary color modification of a digital image
JP3813579B2 (ja) 2000-05-31 2006-08-23 シャープ株式会社 動画像編集装置、動画像編集プログラム、コンピュータ読み取り可能な記録媒体
JP3646931B2 (ja) 2001-08-29 2005-05-11 セイコーエプソン株式会社 イメージレタッチプログラム
US7123269B1 (en) 2002-06-21 2006-10-17 Adobe Systems Incorporated Modifying vector objects
JP4005470B2 (ja) * 2002-10-09 2007-11-07 オリンパス株式会社 情報処理装置及び情報処理プログラム
JP2004228734A (ja) 2003-01-21 2004-08-12 Nippon Telegr & Teleph Corp <Ntt> 動画像色補正装置
JP4684595B2 (ja) 2004-08-05 2011-05-18 ソニー株式会社 画像表示装置
US7593603B1 (en) 2004-11-30 2009-09-22 Adobe Systems Incorporated Multi-behavior image correction tool
US7814414B2 (en) 2005-09-09 2010-10-12 Microsoft Corporation Relative attributes of floating objects
JP4624234B2 (ja) * 2005-10-19 2011-02-02 富士フイルム株式会社 画像再生装置及び画像再生プログラム
JP4438741B2 (ja) 2005-11-30 2010-03-24 ソニー株式会社 色調整装置、印刷装置、画像処理装置、色調整方法、プログラム
JP2007228189A (ja) 2006-02-22 2007-09-06 Canon Inc 色テーブル編集装置、色テーブル編集方法、プログラムおよび記憶媒体
US7693341B2 (en) 2006-04-21 2010-04-06 Apple Inc. Workflows for color correcting images
US8004536B2 (en) 2006-12-01 2011-08-23 Adobe Systems Incorporated Coherent image selection and modification
US8519963B2 (en) * 2007-01-07 2013-08-27 Apple Inc. Portable multifunction device, method, and graphical user interface for interpreting a finger gesture on a touch screen display
US7954067B2 (en) 2007-03-16 2011-05-31 Apple Inc. Parameter setting superimposed upon an image
US8213711B2 (en) 2007-04-03 2012-07-03 Her Majesty The Queen In Right Of Canada As Represented By The Minister Of Industry, Through The Communications Research Centre Canada Method and graphical user interface for modifying depth maps
JP5188101B2 (ja) * 2007-06-01 2013-04-24 株式会社キーエンス 拡大観察装置、拡大画像撮影方法、拡大画像撮影プログラム及びコンピュータで読み取り可能な記録媒体
US8009177B2 (en) 2008-02-11 2011-08-30 Apple Inc. User interfaces for managing image colors
US8144979B2 (en) 2008-04-18 2012-03-27 Sap France Automatic color contrast analyzer
US8401284B2 (en) 2008-05-28 2013-03-19 Apple Inc. Color correcting method and apparatus
JP2011018085A (ja) * 2008-06-19 2011-01-27 Panasonic Corp 情報処理装置
US8139080B2 (en) 2008-10-31 2012-03-20 Verizon Patent And Licensing Inc. User interface color scheme customization systems and methods
US8471781B2 (en) 2009-03-17 2013-06-25 Litera Technologies, LLC System and method for the auto-detection and presentation of pre-set configurations for multiple monitor layout display
US8135735B2 (en) * 2009-07-10 2012-03-13 Geodex, Llc Computerized system and method for tracking the geographic relevance of website listings and providing graphics and data regarding the same
US20110093890A1 (en) * 2009-10-21 2011-04-21 John Araki User control interface for interactive digital television
US8209632B2 (en) * 2010-01-26 2012-06-26 Apple Inc. Image mask interface
CN102918490B (zh) 2010-04-01 2014-07-23 思杰系统有限公司 与在平板计算装置的虚拟桌面内显示的远程应用交互
US8468465B2 (en) 2010-08-09 2013-06-18 Apple Inc. Two-dimensional slider control
US8823726B2 (en) 2011-02-16 2014-09-02 Apple Inc. Color balance
US8806339B2 (en) 2012-02-06 2014-08-12 Apple Inc. User interface control for media editing application

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6348936B1 (en) * 1998-05-28 2002-02-19 Sun Microsystems, Inc. Method and apparatus for graphical selection of data
KR20090023928A (ko) * 2007-09-03 2009-03-06 엘지전자 주식회사 통신 단말기 및 이것의 동작 제어 방법

Also Published As

Publication number Publication date
EP2603846A1 (en) 2013-06-19
US20120036480A1 (en) 2012-02-09
WO2012021313A1 (en) 2012-02-16
US8468465B2 (en) 2013-06-18
US20130346897A1 (en) 2013-12-26
CN103069373B (zh) 2016-05-25
CN103069373A (zh) 2013-04-24
KR20130073942A (ko) 2013-07-03
CA2806577A1 (en) 2012-02-16
US9495087B2 (en) 2016-11-15

Similar Documents

Publication Publication Date Title
KR101470264B1 (ko) 이차원 슬라이더 컨트롤
US9781309B2 (en) Editing media using composite bumps
US7770125B1 (en) Methods and apparatus for automatically grouping graphical constructs
US8760464B2 (en) Shape masks
US8401284B2 (en) Color correcting method and apparatus
US5357603A (en) Method and system for changing a shape type while maintaining existing graphic characteristics
EP0403120B1 (en) Colour display colour control
US5270806A (en) Image editing system and method having improved multi-dimensional editing controls
US8009177B2 (en) User interfaces for managing image colors
US20050068290A1 (en) Method for creating and using user-friendly grids
USRE47592E1 (en) Managing user interface control panels
US20040056906A1 (en) Temporary text and graphic feedback for object manipulators
US10969876B1 (en) Dynamic view user interface system and method
WO2012154258A1 (en) User-aided image segmentation
JP5854573B1 (ja) デジタル画像の色属性表示装置、方法及びプログラム並びに画像処理装置
US6795055B1 (en) Devices, systems and methods for facilitating positioning of cursor on display device
US10168880B2 (en) System, method and computer-accessible medium for manipulating a plurality of components using a single gesture or motion
JP2019082829A (ja) 情報処理装置、および情報処理プログラム
US8456417B2 (en) User interface for configuring image presentation
JP2008027228A (ja) マンマシン装置
Jackson UI Design: Buttons, Menus, and Dialogs
JP2003346169A (ja) 線図形作成プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20171027

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20191029

Year of fee payment: 6