2023년 11월 16일 목요일

[iTOL] Text label dataset을 이용한 자유로운 텍스트 장식

어제 쓴 글('iTOL 제어판에서 라벨 스타일을 일괄적으로 편집하기')에서는 내가 원하는 방식의 라벨 스타일 변경을 제대로 하지 못하였음을 밝혔다. 대신 text label dataset을 이용하면 가능할 수도 있겠다는 것으로 글을 마무리하였었다. iTOL을 익히던 초창기에는 dataset file이 이렇게 다양하지 않았던 것으로 기억한다. 

테스트를 해 보니 과연 이것이 가장 완벽한 해결책임을 알 수 있었다. 오늘의 글에서는 이를 좀더 자세히 다루어 보기로 한다. 단, heatmap 자료의 column label에 대해서는 자유자재로 스타일을 바꾸는 것이 과연 가능한지 아직 알 수 없다.

나는 보통 유전체 염기서열 정보를 이용하여 트리를 만든다. 따라서 Newick tree file을 만들 때에는 assembly accession을 leaf label로 사용한다. 


Assembly accession으로는 무슨 생명체인지 알 수가 없으니 tree 파일의 ID와 실제 표시하고 싶은 학명 또는 균주 정보로 바꾸어야 한다. 가장 직관적인 방법은 labels dataset 파일을 사용하는 것이다. 위에서 보인 트리 자료에 대하여 적용할 labels dataset 파일 일부를 소개해 본다.

GCF_014288055.1,GCF_014288055.1 Agathobaculum sp. M2
GCF_900625105.1,GCF_900625105.1 Agathobaculum sp. Marseille-P7918
GCF_014287995.1,GCF_014287995.1 Agathobaculum sp. NSJ-28

분리자(쉼표)를 경계로 ID와 표시할 텍스트를 나열하였다. Assembly accession으로 나타낸 leaf ID를 균주 정보로 완전히 대체하는 것이 아니라 assembly accession + 균주 번호를 전부 나타내고 싶었기에 이러한 형태가 되었다. 이 파일을 적용하면 다음과 같은 트리 그림이 나온다.


이 상태에서 label text의 속성(색깔, 이탤릭, 볼드)를 바꾸거나 배경색을 지정하는 것은 style dataset 파일을 이용하면 된다. 파일의 데이터 라인은 대충 다음과 같다.

GCF_000807675.2,label,node,#000000,1,bold,#FAEEC3
GCF_900155735.1,label,node,#000000,1,normal,#FAEEC3
GCA_003096535.1,label,node,#000000,1,normal,#FAEEC3

만들어진 그림을 보자. 표시된 텍스트는 ID라는 단일한 필드이다.


이것으로 충분히 아름답다. 하지만 학명을 이탤릭으로 표시하지 못하였다. 제어판의 label style creator를 사용하면 라벨 안에 다양한 스타일 속성을 부여할 수 있다. 그러나 라벨을 공백(분리자는 변경 가능) 기준으로 나눈 뒤 특정 필드에 대해서 속성을 바꾸는 식으로 작동하게 되므로 2, 3번째 필드를 이탤릭으로 바꿀 경우 'sp.'까지도 무차별로 변환된다. 더욱 세밀한 조정 방법이 필요하다.

iTOL 도움말을 공부하다가 우연히 알게 된 text label dataset 덕분에 이 골치아픈 상황을 벗어나게 되었다. 이 데이터셋은 labels dataset 파일의 기능까지 어느 정도는 포함한다. 단, 내가 만든 샘플 그림에서는 ID(assembly accession)이 항상 표시된다. 파일의 데이터 라인을 소개하면 다음과 같다. 텍스트의 색깔을 바꾸는 것도 당연히 가능하고, 볼드와 이탤릭을 한꺼번에 표시할 수 있어서 매우 유용하다. Label position(external or internal)을 정확히 이해하는 것이 중요하다. 다음의 데이터 라인에서 세 번째에 위치하는 숫자가 label position이다. -1, 즉 external로 설정해야 트리의 외부에 텍스트가 표시된다. 우리가 원하는 대부분의 상황에 해당한다.

GCF_025567315.1,<bi>Agathobaculum ammoniilyticum </bi><n>Sanger_34T</n>,-1,#000000,bold,1,0
GCF_015552745.1,<i>Agathobaculum butyriciproducens </i><n>1001099B_141217_D10</n>,-1,#000000,normal,1,0
GCF_027664705.1,<i>Agathobaculum butyriciproducens </i><n>AF94-03DA</n>,-1,#000000,normal,1,0
GCF_020687055.1,<i>Agathobaculum butyriciproducens </i><n>CLA-AA-H270</n>,-1,#000000,normal,1,0

결과를 살펴보자. 애초에 원했던 것이 고스란히 구현되었다. Leaf ID와 그 옆에 표시된 text는 분명히 별도의 필드라는 것이 한눈에 느껴진다.


다음은 iTOL 도움말에서 text label dataset의 활용을 극대화하여 나타낸 매우 화려한 사례이다. 여기에서 leaf ID가 보이지 않는 것은 Control panel > Basic > Display > Labels에서 'Hide'를 선택했기 때문이다. 만약 labels dataset만을 이용하였다면, 라벨을 보이지 않게 한 경우 leaf 옆에는 아무런 텍스트가 나타나지 않을 것이다.


제어판의 dataset editor에서 데이터를 하나씩 입력하거나 클립보드에서 복사해 넣어도 된다.


2023년 11월 17일 업데이트

iTOL에서 제공하는 text lable dataset template file(업데이트 작성 날짜 기준)에는 사소한 오류가 두 군데 존재한다. ALL_LABELS_ROTATION 변수는 정의되지 않은 것이라는 오류 메시지가 나오므로 주석 처리를 해야 한다. 그리고 파일 마지막 부분에 소개한 DATA example에서 Oryza sativa 라인이 잘못되었다. Leaf 3개짜리 가상의 트리를 만들어서 적용했을 때 Oryza sativa 텍스트가 표시되지 않아서 한참을 헤맸었다. 다음의 data example line을 보라.

DATA
#Examples

#node 9598 will have an external label 'Pan troglodytes' in bold red and twice the size of standard labels
#9598,Pan troglodytes,-1,#ff0000,bold,2,0

#node 9606 will have an external label with multiple mixed styles
#9606,<bi color='#006600'>Homo </bi><i>sapiens</i><sup size='0.5' color='#999999'>citation</sup>,-1,#000000,normal,1,0

#node 4530 will have an internal label 'Oryza sativa' in bold italic blue, starting directly over the node
#4530,Oryza sativa,0,#0000ff,bold-italic,1

데이터 라인은 ID, label, position, color, style, size_factor, rotation의 6개 필드로 구성되어야 하지만 Oryza sativa 라인에서는 맨 끝에 와야 하는 rotation이 빠진 상태이다. 여기에 ',0'을 추가해야 한다. 

데이터셋 템플릿 파일에 최종 수정일이나 버전 번호를 붙여서 관리를 하면 더욱 좋을 것 같다. 오류 보고 겸 나의 의견을 간단히 적어서 iTOL 측에 보냈다(iTOL about & contact). 이메일을 보낸 다음날, iTOL의 개발자인 Ivica Letunic을 통해서 곧 수정되었다는 답장을 받았다. 개인 웹사이트와 구글 스칼라를 보니 이 사람도 보통 수준의 연구자가 아니다! 2006년부터 2021년까지 출판된 iTOL 논문의 저자는 전부 Ivica Letunic과 Peer Bork 두 사람이다! Peer Bork는 EMBL Heidelberg의 소장 아닌가...

2023년 11월 15일 수요일

iTOL 제어판에서 라벨 스타일을 일괄적으로 편집하기

분류학은 규칙을 매우 엄격하게 따지는 학문이라서 이를 조금이라도 어기면 불평을 듣기 십상이다. 예를 들어 미생물을 이명법으로 명명할 때 이탤릭체(기울임꼴)를 준수해야 하는 것이 그 중의 하나다. 웹 환경에서 작성한 글을 꼼꼼하게 교정하지 않고 배포하는 일이 잦아지면서 이탤릭체, 볼드, 또는 첨자와 같은 스타일을 엄격하게 준수하지 않은 글을 많이 접하게 된다. 인터넷 상의 글이야 그렇다 치더라도 정식으로 배포된 출판물에서 이러한 오류를 발견하고 미간을 찌푸리는 미생물 분류학자가 매우 많을 것이다.

2015년 4월부터 온라인으로 전환된 Bergey's Manual of Systematics of Archaea and Bacteria(BMSAB)에 새로운 속(genus)에 관한 챕터를 하나 투고한 일이 있다. 나는 공저자 중의 하나로서 2018년 하반기부터 이에 관한 유전체 분석을 시작하여 2019년 상반기에 투고를 했었는데, 에디터가 정년퇴임을 하면서 공중에 뜬 상태가 되었다가 올 초에 출판사로부터 다시 연락이 와서 그 사이에 새로 공개된 유전체를 포함하여 전면적인 분석을 다시 하고 최종본을 완성하여 리비전 형태로 보냈었다.

세 명의 저자 중 나와 교신저자가 전부 외부 기관에 나와 있기에 이메일 교신이 원활하지 않은 상태라서 galley proof 처리 시한을 놓치고 말았다. 일반적인 저널은 48시간 내에 교정쇄에 수정을 하여 보내라고 하는데 이 저널의 경우 무려 14일의 기한을 준다. 이를 '저널'로 간주해도 옳은지는 잘 모르겠다. 웹사이트에서는 reference work라고 표현하였다. 처음에는 에디터의 사정으로 애를 먹였으니 게재 승인 후 교정 작업에서는 저자 집단이 애를 먹여도 좀 참아주어야 하지 않겠는가... 그렇다 하더라도 이미 DOI 번호(아직 미공개)도 나온 상태이니 올해 안에 출판이 되도록 최대한 작업에 박차를 가해야 되겠다.

프로덕션 에디터의 질의 중에는 내가 iTOL에서 만들었던 annotated tree 그림을 고해상도의 것으로 다시 보내달라는 사항이 있었다. 확대를 해도 글꼴이 뭉개지지 않는 PDF 파일이 있으니 그것을 보내면 된다. 

그런데...

Q11. Generally, the binomials are emphasised in italic. Please check and amend accordingly in Figure 2.

아이고, 57개나 되는 라벨을 미처 이탤릭체로 전환하지 않았더니 이런 요구를 하는구나! iTOL의 유료 구독이 끝난 뒤에 이 논문을 위한 트리 생성 작업을 진행했기에 변경 사항을 저장해 두지 못한다. 오직 tree 자료만 iTOL 계정에 남아 있을 뿐, 나머지 annotation file은 매번 드래그하여 넣어서 최종 트리를 만든 후 export를 해야 된다. 라벨을 개별적으로 더블클릭하여 이탤릭체로 만든다 하더라도, iTOL에 저장이 되지 않는다. 그러니 마지막 수정이라 생각하고 iTOL에서 작업을 완벽하게 해야만 한다.

이렇게 일을 할 수는 없는 노릇이다. 구독료를 납부하지 않고 좀 더 간편하게 라벨의 전체 수정을 할 방법이 없는지 도움말을 찾아 보았다. 'Defining multiple font styles within labels' 섹션에 그 방법이 설명되어 있었다. 라벨은 몇 개의 파트로 이루어지므로, 원하는 위치의 파트에 볼드, 이탤릭, 위 첨자, 아래 첨자를 각각 적용할 수 있다. 이 작업은 iTOL Control panel > Advanced > Other functions > Lable functions > Multi-style에서 하면 된다. 라벨 파트는 기본적으로 3개만 있는 것으로 되어 있다. 따라서 내 자료와 같이 (1)assembly accession (2)genus (3)species-epithet (4)strain의 네 파트 혹은 그 이상(스트레인 명이 여러 단어인 경우도 있으므로 파트 수는 더 늘어날 수 있음)으로 라벨이 이루어진 경우 오류가 있는 것으로 인식하므로, Lable style creator에서 'Add a lable part'를 클릭하여 최대의 파트 수를 갖는 라벨의 수에 맞추어야 한다.

iTOL 제어판(advanced 탭)에서 Label style creator를 사용하는 모습. 2, 3번째 필드를 일괄적으로 이탤릭체로 만들었더니 종이 확정되지 않은 것은 Genus_name sp.의 형태가 되고 말았다. 'sp.'는 다시 정상 형태로 되돌려야 한다. Label style creator에서 이렇게까지 세밀하게 조정하는 것이 가능한지는 잘 모르겠다. Options에서 'Exclude labels: sp.'라고 하면 될까? 그렇지 않다. 'sp.'가 포함된 모든 라벨에 대해서 스타일 적용을 하지 않는 방식으로 작동한다.

iTOL에 저장된 트리 자료에 라벨 정보 파일을 올려서 이와 같이 스타일에 손을 대고 - 제어판에서 건드린 모든 것은 따로 기록을 해 두는 것이 현명할 것이다 - 나머지 annotation file을 입히는 일에는 몇 분이 걸리지 않는다. 역시 찾으면 방법은 나온다! 하지만 해결이 불가능 한 것이 있다. Tree에 곁들인 heatmap에는 leaf(raw) label과 동일한 정보를 column label로 만들어 넣었는데, 이것에도 스타일을 적용하기는 매우 곤란하다.

그러나 문제점을 발견 하였다. 표준 균주의 라벨은 style annotation file을 통해서 볼드체로 만들어 놓았는데, 나중에 이탤릭화를 하면서 다시 얇은 글씨로 되돌아갔다는 점. 하이고... Inkscape에서 일일이 고쳐 보았으나 볼드와 이탤릭 속성을 동시에 줄 수가 없다. 워드나 파워포인트가 아니니 참고 살아야 하는 것 같다.

종합하자면 branch와 leaf label에 대한 색상과 스타일을 결정하는 annotation file(iTOL 도움말; 샘플)과 제어판을 통해서 조절하는 label style creater의 미묘한 권력 관계에 문제가 있는 것 같다. iTOL에서 표현하는 색상과 스타일을 설정하는 방법이 점차 세분화되는 것도 사용자를 어렵게 한다. 이에 대해서는 나중에 별도로 다루어 보고자 한다. 그리고 텍스트의 속성 중 볼드와 이탤릭은 공존할 수 있는 것인지에 대한 근본적인 질문도 아직 남아 있다. 예를 들자면 위 첨자와 아래 첨자는 공존할 수 없음이 당연하다. 첨자를 이탤릭체로 만들려는 노력은 아무도 하지 않을 것이다. 하지만 이탤릭과 볼드는? 이를 동시에 가질 수 있는 속성으로 만들어 주는 편집기가 있고, 그렇지 않은 것도 있다. 

2023년 11월 16일 업데이트 - text label dataset의 활용

Text label dataset(iTOL 도움말, template)을 사용하면 각 node ID에 텍스트를 연결하여 tree에 표시하되 html tag를 사용하여 매우 다양한 스타일을 적용할 수 있다고 한다. 전통적으로 사용하던 labels annotation file(iTOL 도움말, template)에서는 아무런 스타일이 없는 단순한 텍스트만 표시하게 해 주었다. Text label dataset에서는 <bi>...</bi> 태그를 써서 볼드와 이텔릭을 동시에 나타내는 것이 가능하다. 데이터 파일을 만들기는 상당히 귀찮지만 이것을 잘 이용하면 leaf label을 자유자재로 변형할 수 있을 것으로 기대한다.


2023년 11월 13일 월요일

Waveform FREE - 음악 분야에서 '컴핑(comping)'의 여러 의미

컴핑이란 코드로 리듬감 있는 반주를 하는 주법입니다. (출처: 컴핑이란? 재즈 피아노 기초 주법 by 박터틀)

재즈 기타 연주 스타일에는 재즈 화음 보이싱 편집(때로는 베이스 라인을 걸어다니는 것)과 재즈 스타일 프레이징 및 장식(즉흥 연주)으로 재즈 화음을 연주하는 것이 포함됩니다. Comping은 노래의 멜로디 또는 다른 뮤지션의 솔로 즉흥 연주에 따라 코드를 연주하는 것을 말합니다. (출처: Jazz Guitar - 백과사전, 과학 뉴스 및 연구 리뷰)

위에서 인용한 바에 따르면 컴핑이란 주 멜로디(보컬리스트 또는 솔로 연주자)를 뒷받침하는, 이른바 반주에 해당하는 연주 행위를 뜻한다. 정확히 어떤 낱말에서 유래했는지는 알기 어려우나, 아마도 accompaniment에서 왔을 것으로 보는 견해가 많다.

음악 프로덕션에서 컴핑은 다른 의미를 갖는다. 여기에서는 기존에 반복하여 녹음한 트랙에서 가장 잘 된 부분을 뽑아서 완성도가 높은 트랙을 만드는 것을 뜻한다. Composite를 어원으로 한다는 자료가 많지만 때로는 compiling의 줄임말이라고 설명하기도 한다. 

두 번째 의미의 컴핑은 대부분의 DAW가 지원하는 기능이기도 하다. 내가 사용하는 (Tracktion) Waveform FREE v.12.5.11에서는 loop recording이 컴핑을 위한 기본 전제조건이다. Loop recording을 하려면 트랜스포트 창에서 Loop를 활성화한 뒤(아래 그림) 녹음하려는 위치의 시작과 끝 부분에 in/out marker를 놓는다.


녹음 버튼을 클릭하면 마커로 경계가 지워진 구간 내에서 반복적으로 녹음이 이루어진다. 각 테이크마다 count-in 이 작동하게 하려면 Click Track > Pre-record count in length를 1~2로 맞추라고 한다. 하지만 실제 녹음에서는 첫 테이크 직전에만 count-in이 작동한다. 

반복 녹음을 마친 뒤 오른쪽 아래의 [+]를 클릭하면 여러 각 테이크를 세로로 펼치거나 별도의 트랙으로 나눌 수 있다.


맞춘 뒤 각 테이크를 세로로 펼쳐 놓고 드래그하여 가장 좋은 것을 이어 붙여서 다음과 같이 최종 클립을 만들면 된다.


각 테이크 원본을 더 이상 보관할 필요가 없다면, [+]를 클릭하여 Flatten current comp를 실행하여 최종본만 남긴다.

녹음 편집의 컴핑이라는 복잡한 작업을 공부하기 전에 Record Mode를 이해하는 것이 중요하다. Audio track header의 input object(오른쪽으로 향한 큰 화살표 모양)을 클릭했을 때 나타나는 하단의 Property panel에서 Record Mode를 입맛에 맞게 설정할 수 있다.

동일한 오디오 트랙에 반복하여 녹음을 실시할 때 기존의 클립을 어떻게 처리할 것인지는 바로 여기에 달려있다. 녹음 모드는 다음의 세 가지이다.

  • Overlay newly recorded clips onto edit (아마도 이것이 default 설정일 것이다)
  • Replace old clip in edit with new ones
  • Don't make recordings from this device

Overlay 모드로 녹음하여 하나의 트랙에 여러 클립이 중첩하여 생성되었을 경우 이를 loop recording후 세로로 펼쳐 놓듯이 배열할 수 있는 기능이 있으면 도움이 될 것 같다. 이미 구현된 기능이지만 내가 미처 찾지 못했을 수도 있다. 

Auto Punch는 in/out marker를 사용하여 녹음할 위치를 사전에 지정한다는 점에서 loop recording과 유사하다. Transport panel에서 Punch를 활성화한 뒤 시작 위치 앞에 커서를 놓은 다음 녹음을 시작하면 커서가 이동하면서 기존 녹음 결과가 재생되다가 in/out marker로 정의된 위치 내에서만 '진짜' 녹음이 이루어진다. Punch와 loop를 동시에 활성화해서는 안 된다.

Loop recording을 하지 않았는데, 이미 지워버린 녹음이 더 나은 것 같아서 되살리고 싶다면? 그러려면 옵션에서 Retrospective Record 기능을 켜 놓으면 된다.

다음 주에는 나의 부상으로 중단했던 밴드 연습을 재개할 계획이다. 어차피 공연은 어렵겠지만, 일부 악기를 녹음해 보고 싶다. 베이스 기타는 DI box와 오디오 인터페이스로 어떻게 해서든 해결이 가능하나 드럼이 문제다. 마이크로폰을 하나 써서 드럼 연주를 하는 방법이 인터넷에 소개되어 있으니 이를 참조하여 시도해 보고 싶다. 프로그래밍으로 만든 드럼보다 당연히 생동감이 넘칠 것이다. 

녹음 공부라는 면에서는 믹서 + 오디오 인터페이스의 조합이 여러 면에서 좋은 것 같다.

2023년 11월 12일 일요일

[자작곡] 친구 JH에게 + Sirius(Alan Parsons Project)

다음은 어제 유튜브에 올렸던 것. 원래 연초에 Audacity에서 약식으로 녹음하여 올려 놓았던 원곡을 Tracktion Waveform FREE에서 전부 재작업한 것이다. 작곡의 취지는 유튜브에 설명을 달아 놓았다. 왜 Alan Parsons Project의 'Sirius'를 곡 마지막에 넣었는지에 대해서도...



다음의 것은 어제 올린 것을 약간 수정한 것. 이 작업을 위해 MIDI 데이터를 수정하는 방법 -  메뉴 속에 숨어있던 quantise 및 MIDI recode mode의 변경 방법(merge, replace, and overlay) - 을 제대로 찾아서 익혔다. Quantise 기능은 MIDI clip을 더블클릭하였을 때 나타나는 MIDI note editor에서 찾도록 한다.

The MIDI Note Editor.

MIDI record mode를 바꾸려면 track header의 input을 마우스 오른쪽 버튼으로 클릭하였을 때 하단 Property 창에 나타나는 'Action' 항목을 선택하도록 한다.


Tracktion Waveform의 UI를 구성하는 각 패널의 이름을 정확히 아는 데만도 몇 달, 아니 그 이상이 걸린 것 같다. 아래는 대부분의 편집 작업이 이루어지는 Edit Tab의 구성을 보여준다. Edit Tab의 주요 요소는 browser, arrangement, mixer, 그리고 control panel이다.

1: action panel, 2: browser pane, 3: track inputs (in track header column), 4: global track, 5: marker track, 6: master track, 7: outputs panel, 8: MIDI editor, 9: mixer panel, 10: controls panel(menu, property, master section으로 구성). 2번의 browser pane은 드래그하여 다른 곳으로 옮길 수 있다.

이미 유튜브에 올린 곡에 대해서 수정본은 유튜브에 한번만 올린다는 나 나름대로의 원칙에 따라서 2차 수정본은 블로그에 공개한다. 만약 세 번째의 수정본이 만들어진다면, 그것은 개인 음반(LP?)를 발매할 때 비로소 가능할 것이다. 정년 퇴임 기념 프로젝트로 생각해 보도록 한다. 아직은 꽤 많은 시간이 남아 있지만...

Analog synth 느낌의 가상악기로 연주한 멜로디라인을 수정하였고 synth track을 하나 더 넣었다. 수정 이력은 v.20231112, v.20231113... 앞으로도 계속 이어질 것이다. 여기에는 최종판만 올려 놓을 것이다.




친구여! 그대의 눈에 담은 별빛을 잃지 않기를...

2023년 11월 7일 화요일

데임 세인트 M250 기타의 새들을 하나만 교체해 보다

전기기타의 줄을 일단 풀어내면 헤드머신에 물렸던 부분이 꺾이면서 재사용하기가 곤란하다. 길이도 짧아진 상태라서 다루기도 나쁘다. 따라서 새들을 교체하는 등의 이유로 줄을 분리한 뒤에는 전부 새로 가는 것이 바람직하다. 그러나 데임 세인트 M250의 줄은 많이 사용하지 않았기에 새 것으로 갈기에는 아깝다.

스프링이 사라진 6번 줄의 새들만 새로 산 것으로 바꾸고 줄도 그대로 유지하기로 했다. 가장 두꺼운 줄이라서 재사용을 해도 문제가 적을 것으로 판단했다.

교체 전. 1번 줄의 새들 스프링은 볼펜에서 뺀 것을 재활용한 것이다. 한참을 치지 않았더니 먼지가 많다.

교체 후. 어울리지 않는 우스운 모습이다.

새로 구입한 새들 세트에서 스프링만 빼서 사용하는 것이 더 보기에 좋았을지도 모르겠다. 'FENDER'라는 음각은 차라리 없는 것이 더 나았을 것이다.

아직 기타 정비를 위해 할 일이 몇 가지 더 남아 있다. 어깨 보조기라도 풀어야 수월하게 작업을 할 터인데 답답하기만 하다.

기존의 새들(위)과 알리익스프레스에서 구입한 새들.

2

뜻하지 않은 부상의 뒷이야기[4]

부상을 입은 지 3주 반이 지나는 날이었던 어제, 두 번째 외래 진료를 위해 S대 병원 정형외과를 방문하였다. 최초의 외래 방문 후 3주째였다. 먼저 X-ray 촬영을 하러 영상의학과로 향하는데 말끔히 차려 입은 한 노신사가 접근하더니 혹시 다쳐서 병원에 왔느냐고 묻는다. 허, 이 양반이 어디서 약을 팔려고 이래... 필요 없으니 됐다고 하고 외면하였다.

병원 주변에는 환자 및 가족의 절박한 사정을 악용하여 이득을 취하려는 사람들이 많다. 지난주에 MRI를 찍은 뒤 귀가하기 위해 버스 정류장에 가니 '○○암 경험자 20분만 상담하면 3만원 지급'이라는 광고문이 가로수마다 붙어 있는 것을 볼 수 있었다. 자본주의 사회에서 이렇게 쉽게 돈을 버는 것이 가능하겠는가. 아마 상담을 마치면 3만원보다 족히 수십 배는 비싼 건강식품 구매 계약서가 들려 있을 것이다.

X-ray 소견으로는 상완골 대결절의 골절이 잘 치유되고 있다고 하였다. 상체를 약간 기울이고 상완골을 어깨쪽에서 내려다보면서 찍은 영상을 보면 마치 마른 장작 단면을 도끼로 내려친 것처럼 몇 갈래로 쪼개진 흔적과 함께 골 유합이 이루어지는 모습이 선명하였다. 이는 전면에서 찍은 사진을 봐서는 알기 힘든 모습이었다. 생각했던 것보다 내 부상은 꽤 심각했던 것 같다. 그럼에도 불구하고 수술을 피하고 보존적 치료를 할 수 있어서 정말 다행이었다.

3주가 넘게 보조기를 착용하고 불편한 생활을 하다가 '전위가 더 심해졌네요. 수술을 해야 되겠습니다.'라는 판정을 받으면 얼마나 안타깝겠는가? 사실 지난 3주간 이 걱정을 하면서 조심스럽게 보냈었다. 어떤 골절이든 수술을 하려면 다친 뒤 2주 내에 해야 한다는 글을 읽은 적도  있다.

만약 다친 직후에 수술을 받았다면 회복이 더 빨랐을까? 부러진 뼈를 일단 물리적으로 고정해 놓았으니 더 빠른 시기에 재활을 시작할 수 있었을 것이다. 빠른 직장 복귀를 위해서도 수술적 치료를 선택하는 경향이 높다고 한다(대한골절학회지 2008년, 상완부 간부 골절: 금속판 고정술). 수술을 하게 되면 근 분리(뼈에서 힘살을 발라내는?)가 필요하고 신경 손상 등 위험 요소도 많다. 상완골 근위부 골절의 수술적 치료에 쓰이는 세 가지 고정 방법 - 비관혈적 정복 및 경피적 핀 고정술, 이분굴곡날 금속판 및 강선 장력대 고정술, 잠김 압박 금속판 고정술 - 을 비교한 논문을 소개해 둔다(대한정형학회지 2011, 전위된 상완골 근위부 이, 삼분 골절에서 세 가지 고정술 간의 비교). 53건의 증례에 대한 평균 연령은 55.3세(18-88). 내 나이와 놀랍도록 비슷하다! 수술 후 빠르게는 1주 이내에 견관절의 수동적 운동을 시작하였다고 하니, 보존적 치료에 비해서 더 빠르게 재활을 시작할 수 있는 것은 맞다.

하지만 비용이나 플레이트/핀 등을 빼기 위한 재수술의 번거로움을 생각하면 보존적 치료를 하는 것이 백 번 낫다고 생각한다. 물론 뼈가 여러 조각이 나서 수술이 불가피한 상황은 아니었음을 다행으로 여겨야 한다. 

담당 의사는 보조기를 찬 상태에서 관절이 굳지 않도록 조금씩 가동 범위를 넓혀 나가는 연습을 해 나가고, 3주 뒤에 다시 내원하라고 하였다. 다만 어깨를 갑자기 확 움직이거나 멈추는 것은 큰 부담을 주니 금지하라고 지시하였다. 어깨근육의 쓰임에 대해서는 효환샘 맨몸 운동 방법에 잘 설명되어 있다.

근위 상완골 골절의 치료에서 팔을 오랫동안 고정하는 것은 큰 이득이 없고, 최근에는 조기에 관절 범위 회복을 위한 스트레칭 운동을 하는 것이 기능 회복에 더 도움이 된다는 결과가 많이 보고되고 있다고 한다. 완전한 골유합(synostosis)에는 팔 뼈의 경우 8~12주가 걸린다. 이 동안에는 관절이 굳지 않도록 조금씩 움직이는 정도로만 수동적 운동을 하고, 약해진 근육을 본격적으로 키우는 것은 그 다음에나 가능할 것이다. 다치기 전에는 팔굽혀펴기를 한 번에 30회 정도 할 수 있었는데 그 수준으로 돌아오려면 내년 여름은 되어야 할 것이다.

근무지에 내기 위해서 지난 10월 13일에 S대 병원에서 받은 소견서를 다시 살펴 보았다. 갈비뼈가 3개 부러진 것으로 알고 있었는데 소견서에는 4개라고 적혀 있었다.

@ X-ray: Rt. humeral head fracture, Rt. 7~10th rib fracture

아직 오른쪽 옆구리가 아프지만 초기에 비해서는 많이 나아졌다. 약은 추가로 처방 받지 않았다.

X-ray 촬영을 마지막으로 하게 되는 날, 영상 자료를 CD-ROM으로 받아 와서 골절의 치유 과정을 내 눈으로 다시 확인하고 싶다.


2023년 11월 3일 금요일

데임 세인트 M250의 백플레이트 장착 준비

알리익스프레스에서 구입한 백플레이트는 M250 본체에 파인 홈보다 약간 작다. 그건 별 문제가 아닌데, 나사못 구멍의 간격도 좁다. 뭔가 가공을 하지 않으면 장착이 어렵다. 


자, 어떻게 할 것인가? 기타 바디의 기존 구멍을 3 mm 드릴 비트(핀바이스 사용)로 확장한 뒤 우드퍼티로 메우고 백플레이트에 맞추어서 구멍을 새로 뚫기로 하였다. 오른손을 쓰기 어려우니 왼손으로... 

구멍을 넓히고...

퍼티를 채웠으나 너무 지저분하다.

구멍 주변에 묻은 노란 퍼티가 너무 보기에 흉하고 강도가 그렇게 높지도 않아서 가루가 계속 떨어져 나온다. 120방 사포로 문질렀다.


이대로 끝내려고 하니 역시 마음에 들지 않는다. 마지막으로 수성 바니쉬를 바르자.

트레몰로 스프링 걸이쇠(claw)의 일부(녹색 원)가 백플레이트에 닿는다. 본체에 박힌 스크류의 각도를 조정할 수는 업으니 백플레이트의 닿는 부분을 줄로 살짝 갈아내야 한다.

이제 마음에 든다. 우드퍼티의 색깔이 더 어두웠다면 훨씬 좋았을 것이다. 백플레이트를 아직 장착하지는 못했다. 고정용 나사못을 아직 받지 못했기 때문이다.